
先新建asm文档,写出如下代码:
assume cs:codesegcodeseg segmentzhaochenyu:mov ax,2000H mov ds,ax mov al,[0] mov bl,[1] mov cl,[2] mov dl,[3] mov ax,4c00H int 21Hcodeseg endsend zhaochenyu 而后在dosbox中进行编译链接,
1.png此时,debug这个程序,输入:
debug 2.exe在debug中查看寄存器状态并用d命令查看段地址2000,偏移地址为0的空间内容,一共四个字节:
2.png接下来t命令单步执行程序:
3.png注意看到指令变成了mov BL,01,下一步中BL被赋值成了01,而不是将段地址ds为2000,偏移地址为1的内存单元中的内容赋值到了BL中,用u命令查看:
4.png可以看出来,中括号[]是没使用的。
但是在debug中用a命令写指令中括号[]就有使用了。