title: Store and Retrieve a number from memory in 8086 assembly language
body: <p>I'm a total beginner to 8086 assembly language. I want to try some simple stuff first. How do write a program, to enter a number, say <strong>x</strong>, store it in memory and then later on load it to a register, and display it? </p>
  
  <p>I did something like this :</p>
  
  <pre><code>.MODEL SMALL
  
  .DATA
      NL2     DB      0AH,0DH,'Enter a number:','$'
  .CODE
  MAIN PROC
      MOV si, 100d
      LEA DX,NL2 ; 
      MOV AH,09H  ; 
      INT 21H
      MOV AH,0AH  ; Read into buffer
      MOV [si],0AH ; Store in memory
      MOV BX,[si] ; load from memory to bx
      MOV BX, 09H ; display it
      INT 21H
     .EXIT
  
      MAIN    ENDP
              END     MAIN
  </code></pre>
  
  <p>What's the mistake? Please help me! Thanks!</p>