1字=2字节=16位二进制数=4位十六进制数 (3075AH)=12H,表示3075AH号单元中的内容是12H,称为字节单元;若(37692H)=5678H,表示37692H单元和37693H单元一起存放5678H,该单元是字单元。 字单元在存储的时候,高字节放在高地址单元,低字节放在低地址单元,即56H(高字节)放在37693H单元(高地址单元),78H(低字节)放在37692H单元(低地址单元)。如图:
用AX寄存器存放一个字1234H,表示为(AX)=1234H,即高字节12放在AH,低字节34放在AL中。
1. 立即寻址方式(mov ax 1234)
-A
MOV AX,3060
MOV AL,5
MOV BL,FF
MOV BX,A46D
MOV CX,17
copy
(执行T命令时要注意先检查ip值是否为第一条指令的偏移值。)
2. 寄存器寻址方式(mov ax bx)
-A
MOV AX,0
MOV BX,1234
MOV AX,BX
MOV CL,AH
MOV AX,4650
copy
3. 直接寻址方式(MOV AX,DS:[2000H];该指令表示把段地址为DS,偏移地址为2000,2001的两个内存单元读出一个字(两个字节)送入AX。)
(1)-A
MOV AX,DS:[2000]
MOV DS:[4000],AX
copy
(从上例中可以发现,存储单元与寄存器间进行字的交互,是按照"AH->DS:[2001],AL->DS:[2000]"的规则来归置字节的。)
(1)-A
MOV AL,DS:[2000]
MOV DS:[4000],AL
copy
(从上例中可以发现,存储单元与寄存器间进行字节的交互, 依然是按照"AH->DS:[2001],AL->DS:[2000]"的规则来归置字节的。)
4. 寄存器间接寻址方式 (MOV AX,[BX]表示把段地址为DS,偏移地址为(寄存器BX值),(寄存器BX值的+1)两个内存单元读出一个字(两个字节)送入AX。)
(1)-A
MOV BX,4580
MOV AX,[BX]
copy
(我们发现,AX的值,与DS:4580,4581的值相同,说明[BX]在此题中确实表示段地址为DS,偏移地址为(寄存器BX值),(寄存器BX值的+1)两个内存单元)
(2)-A
MOV BX,4590
MOV AL,[BX]
copy
5. 寄存器相对寻址方式("MOV AX,25[SI]"表示把段地址为DS,偏移地址为(寄存器SI值+25H),(寄存器SI值+25H+1H)两个内存单元读出一个字(两个字节)送入AX。)
-A
MOV SI,7310
MOV AX,25[SI]
copy
** 实验部分** (1)两个操作数相减运算,结果放在数据段的16号单元。 1)AX、BX寄存器分别赋值为0008H和0010H。 2)AX和BX的内容相减(SUB指令),结果在AX中。 3)用直接寻址方式将相减的结果保存到16号单元。
(2)两个操作数相加运算,结果放在附加段的0020H号单元。 1)AX的值为0034H。 2)AX和65相加,结果在AX中。 3)用寄存器间接寻址方式(段超越)保存运算结果。
(3)将AX寄存器中的1234H写入数据段的2号单元,读出3号单元的12H传送给BL寄存器。(寻址方式自定)
学习时间 200分钟
操作时间 123分钟
按键次数 2294次
实验次数 2次
报告字数 2435字
是否完成 完成