一、写指令: 1.将DI寄存器的内容减1 sub ax,1 2.用一条指令使程序从中断服务程序返回 3.从80H端口读入
答案:2 悬赏:50 手机版
解决时间 2021-03-30 19:20
- 提问者网友:轻浮
- 2021-03-30 11:14
一、写指令: 1.将DI寄存器的内容减1 sub ax,1 2.用一条指令使程序从中断服务程序返回 3.从80H端口读入
最佳答案
- 五星知识达人网友:举杯邀酒敬孤独
- 2021-03-30 12:25
程序题作业答案:
一、写指令:
1.将DI寄存器的内容减1 DEC DI或 SUB DI , 1
2.用一条指令使程序从中断服务程序返回 IRET
3.从80H端口读入数据送入AL IN AL, 80H
4.将3000H及3001H两单元内容与AX寄存器内容相减,并将其差送回原单元
SUB [3000H], AX
5.用指令实现AX寄存器内容不变,但使进位标志CF置0
AND AX, AX
6.将2050H端口的内容读入CL
MOV DX, 2050H
IN AL, DX
MOV CL, AL
7.把BX内容压入堆栈 PUSH BX
8.用一条逻辑指令使DX寄存器的高3位为1,其余位不变
OR DX, E000H
或 MOV BX, E000H
OR DX, BX
9.把AH内容取反 NOT AH
10.将AL的内容乘以3 MOV CL,3
MUL CL
二、写程序
1. 将DX,AX两寄存器中的数与BX,CX两寄存器中存放的数相加,并将和送入
2050H开始的存储区中
ADD AX, CX
ADC DX, BX
MOV [2050H], AX
MOV [2052H], DX
2.将80H端口的内容取反后在输出到原端口
IN AL, 80H
NOT AX
OUT 80H, AL
3.将BX寄存器的内容与CX的内容相乘,并将乘积送回BX,CX两寄存器中
MOV AX, BX
MUL CX
MOV BX, DX
MOV CX, AX
4.编程将2000H单元开始存放的3个字节的数据送至2030H单元开始的存储区中
MOV AX, [2000H]
MOV [2030H], AX
MOV AL, [2002H]
MOV [2032H], AL
三、分析程序
1.行下列程序后,AX的内容是什么?完成了什么功能?
MOV AX, 5678H
NOT AX
INC AX
答:(AX)=A988H 此程序完成了将(AX)求补的工作
2. 执行下列程序后,DX寄存器的内容是什么?此段程序具有什么功能?
MOV DX, 0F0FH
MOV BX, 4322H
PUSH DX
PUSH BX
POP DX
POP BX
答:(DX)=4322H (BX)=0F0FH 实现了(DX)与(BX)互换
3. 分析下列程序的功能,并对各条指令进行注释
LEA SI, STRNG1 ; 建立原指针
LEA DI, STRNG2 ;建立目的指针
MOV CX,20 ;送串的字节个数
CLD ;传送过程为增址形式
REP MOVS STRNG2, STRNG1 ;进行字节串传送
将STRNG1为首地址存放的20个字节数传送到以STRNG2为首地址的存储空间
4. 执行下列程序后,AX的内容是多少?程序功能是什么?
MOV AX, 0085H
MOV CL, 3
SHL AX, CL
ADD AX, AX
答:(AX)=0850H
此程序完成了AX的内容乘16
一、写指令:
1.将DI寄存器的内容减1 DEC DI或 SUB DI , 1
2.用一条指令使程序从中断服务程序返回 IRET
3.从80H端口读入数据送入AL IN AL, 80H
4.将3000H及3001H两单元内容与AX寄存器内容相减,并将其差送回原单元
SUB [3000H], AX
5.用指令实现AX寄存器内容不变,但使进位标志CF置0
AND AX, AX
6.将2050H端口的内容读入CL
MOV DX, 2050H
IN AL, DX
MOV CL, AL
7.把BX内容压入堆栈 PUSH BX
8.用一条逻辑指令使DX寄存器的高3位为1,其余位不变
OR DX, E000H
或 MOV BX, E000H
OR DX, BX
9.把AH内容取反 NOT AH
10.将AL的内容乘以3 MOV CL,3
MUL CL
二、写程序
1. 将DX,AX两寄存器中的数与BX,CX两寄存器中存放的数相加,并将和送入
2050H开始的存储区中
ADD AX, CX
ADC DX, BX
MOV [2050H], AX
MOV [2052H], DX
2.将80H端口的内容取反后在输出到原端口
IN AL, 80H
NOT AX
OUT 80H, AL
3.将BX寄存器的内容与CX的内容相乘,并将乘积送回BX,CX两寄存器中
MOV AX, BX
MUL CX
MOV BX, DX
MOV CX, AX
4.编程将2000H单元开始存放的3个字节的数据送至2030H单元开始的存储区中
MOV AX, [2000H]
MOV [2030H], AX
MOV AL, [2002H]
MOV [2032H], AL
三、分析程序
1.行下列程序后,AX的内容是什么?完成了什么功能?
MOV AX, 5678H
NOT AX
INC AX
答:(AX)=A988H 此程序完成了将(AX)求补的工作
2. 执行下列程序后,DX寄存器的内容是什么?此段程序具有什么功能?
MOV DX, 0F0FH
MOV BX, 4322H
PUSH DX
PUSH BX
POP DX
POP BX
答:(DX)=4322H (BX)=0F0FH 实现了(DX)与(BX)互换
3. 分析下列程序的功能,并对各条指令进行注释
LEA SI, STRNG1 ; 建立原指针
LEA DI, STRNG2 ;建立目的指针
MOV CX,20 ;送串的字节个数
CLD ;传送过程为增址形式
REP MOVS STRNG2, STRNG1 ;进行字节串传送
将STRNG1为首地址存放的20个字节数传送到以STRNG2为首地址的存储空间
4. 执行下列程序后,AX的内容是多少?程序功能是什么?
MOV AX, 0085H
MOV CL, 3
SHL AX, CL
ADD AX, AX
答:(AX)=0850H
此程序完成了AX的内容乘16
全部回答
- 1楼网友:佘樂
- 2021-03-30 12:59
海滨学院
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯