实验一 DEBUG使用学习、传送类指令实验
实验目的:熟悉DEBUG的使用,以及传送类指令的上机实
践。
实验原理:
实验仪器:DEBUG、微型计算机
实验内容:
1. 指出下列指令语法是否正确,若不正确说明原因
Mov
DS,0100H 错误,立即数不能作为目的操作数
Mov BP,AL 错误,bp是16位,al是8位
Mov AX,[ AX] 错误,ax不能作为间接寻址的寄存器
Mov ES:[BX+DI],AX 正确
2. 设Sp的初始值为2000H,AX=3456H,BX=6789H,问:
执行指令PUSH AX 后,((SP))=?
再执行PUSH BX及 POP AX 后,SP=?
并尝试画出堆栈前后变化示意图。
3. 在DEBUG环境中动手实践所有传送类指令。
4. 比较其他汇编工具
实验二
实验目的(要求):继续巩固学习DEBUG;比照记录所有算数运算类指令对标志位的影响。(寻址方式及传送类指令等掌握不好的同学首要复习前部分内容)
实验原理:
实验仪器:DEBUG、微型计算机
实验内容:
1、 复习巩固
现有(DS)=2000h,(BX)=0100h,(SI)=0002h,(20100)=12h
(20101)=34h,(20102)=56h,(20103)=78h
(21200)=2Ah, (21201)=4ch
(21202)=B7h,(21203)=65h,
请说明下列指令执行后,AX寄存器的内容。
Mov ax,1200h Mov ax,[bx]
Mov ax,[1200h] Mov
ax,1100[bx]
Mov
ax,bx Mov ax,[bx][si]
2、 写出下列计算的指令序列,其中X,Y,Z,R,W均为存放带符号数单元的地址。
(1) Z=W+(Z-X)
MOV AL,[Z]
SUB AL,[X]
ADD AL,[W]
MOV [Z],AL
(2) Z=((W-X)/5*Y)*2
MOV AL,[W]
SUB AL,[X]
IDIV AL,,5
IMUL AL,[Y]
IMUL AL,2
MOV [Z],AL
3、 写出存放在DX和AX中的双字长数求补指令序列。
Sub
bx,ax neg ax
Mov ax,bx neg dx
Xor bx,bx dec dx
Sbb bx,dx
Mov dx,bx
4、 对照例题习题练习所有算术运算类指令