[si] 表示一个内存单元,物理地址是 ds:[si]
mov 指令不支持将数据赋值给内存空间
可以考虑:
mov ax,10h
mov [si],ax
这样的话就是正确的赋值。
————————————以下是debug内容————————————————
DS=1000 ES=0B4F SS=0B4F CS=0B4F IP=0103 NV UP EI PL NZ NA PO NC
0B4F:0103 8904 MOV [SI],AX DS:0000=0000
-t
AX=0010 BX=0000 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000
DS=1000 ES=0B4F SS=0B4F CS=0B4F IP=0105 NV UP EI PL NZ NA PO NC
0B4F:0105 26 ES:
0B4F:0106 3A0F CMP CL,[BX] ES:0000=CD
-d 1000:0
1000:0000 10 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
1000:0010 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
1000:0020 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
1000:0030 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
1000:0040 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
1000:0050 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
1000:0060 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
1000:0070 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
正确