了解程序集8086中的随机数代码

时间:2014-05-29 21:35:45

标签: assembly

我在论坛上找到了一个代码,用于在Assembly 8086中生成0到9之间的随机数。以下是代码:

    RANDSTART:
   MOV AH, 2ch         
   INT 21h       
   mov  ax, dx
   xor  dx, dx
   mov  cx, 10    
   div  cx       
   mov si, dx
   mov variable, si 

拜托,我需要你们帮我解释一下这句话:

 xor  dx, dx 

我不明白为什么我们需要在这里使用xor。 希望你们能帮助并教我:)

1 个答案:

答案 0 :(得分:0)

xor dx,dx等于mov dx,0。 它是一个逻辑门:

1+1=0 
0+0=0 
1+0=1 
0+1=1

基本上当你xor个数字时,输出为0。 它优于mov命令,因为它占用的内存较少。 希望你现在明白一点。