77范文网 - 专业文章范例文档资料分享平台

《微机原理与接口技术》洪永强课后习题第2版(3)

来源:网络收集 时间:2018-11-28 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

ENTRY

DW 3 ……

MOV BX,OFFSET TABLE ADD BX,ENTRY MOV AX,[BX]

答:(AX)=1E00H。存储方式如右图所示:

18. 指出下列程序段的功能

MOV CX,10 CLD

LEA SI,FIRST LEA DI,DECOND REP MOVSB

答:将数据段首地址为FIRST的十个字节数据传送到附加段首地址为

DECOND的内存缓冲区中。 19. 试写出程序段把DX、AX中的双字右移四位。 (80页有答案)

TABLE 0AH 00H 14H

TABLE+3 00H 1EH 00H 28H 00H 32H 00H

3.17题的TABLE

存储方式

20. 当执行中断指令时,堆栈的内容有什么变化?如何求得子程序的入口地址? 21. 试述中断指令IRET与RET指令的区别。

22. 根据给定的条件写出指令或指令序列:

(1) 将一个字节的立即数送到地址为NUM的存储单元中? (2) 将一个8位立即数与地址为BUF的存储单元内容相加? (3) 将地址为ARRAY的存储单元中的字数据循环右移一位? (4) 将16位立即数与地址为MEM的存储单元中的数比较? (5) 测试地址为BUFFER的字数据的符号位? (6) 将AX寄存器及CF标志位同时清零?

(7) 用直接寻址方式将首地址为ARRAY的字数组中第5个数送往寄存器BX中?

(8) 用寄存器寻址方式将首地址为ARRAY的字数组中第5个数送往寄存器BX中?

(9) 用相对寻址方式将首地址为ARRAY的字数组中第8个数送往寄存器BX中?

(10) 用基址变址寻址方式将首地址为ARRAY的字数组中第N个数送往寄存器BX中?

(11) 将首地址为BCD_BUF存储单元中的两个压缩BCD码相加,并送到第三个存储单元中?

23. 用指令或指令队列实现下述要求的功能。

(1) AH的高4位清0; (2) AL的高4位取反;

(3) AH的低4位移到高4位,低4位清0; (4) AL的高4位移到低4位,高4位清0; (5) 将BX的低2位全变为1?

答:(1)

(2) (3) (4) (5) AND XOR MOV SHL MOV SHR OR AH, 0FH AL, 0F0H CL, 4 AH, CL CL, 4 AL, CL BX, 0003H

24. 写出可使AX清0的几条指令。

答: AND AX, 0

XOR AX, AX MOV AX, 0 SUB AX, AX

25. 若AL=0FFH,BL=13H,指出下列指令执行后标志AF、OF、ZF、SF、PF、

CF的状态。

(1) ADD BL, AL (2) SUB BL, AL (3) INC BL (4) NEG BL (5) AND AL, BL (6) MUL BL (7) CMP BL, AL (8) IMUL BL (9) OR BL, AL (10) XOR BL, BL 答:(1) (AF)=1、(OF)=0、(ZF)=0、(SF)=0、(PF)=1、(CF)=1

(2) (AF)=1、(OF)=0、(ZF)=0、(SF)=0、(PF)=1、(CF)=1 (3) (AF)=0、(OF)=0、(ZF)=0、(SF)=0、(PF)=1、(CF)=不变 (4) (AF)=1、(OF)=0、(ZF)=0、(SF)=1、(PF)=1、(CF)=1 (5) (AF)=0、(OF)=0、(ZF)=0、(SF)=0、(PF)=0、(CF)=0 (6) (OF)=1、(CF)=1、其它标志无定义

(7) (AF)=1、(OF)=0、(ZF)=0、(SF)=0、(PF)=1、(CF)=1 (8) (OF)=0、(CF)=0、其它标志无定义

(9) (AF)=0、(OF)=0、(ZF)=0、(SF)=1、(PF)=1、(CF)=0 (10) (AF)=0、(OF)=0、(ZF)=1、(SF)=0、(PF)=1、(CF)=0 26. 已知BUF单元有一个单字节无符号数X,按要求编写一程序段计算Y(无

符号字数据),并将其存入累加器。

Y=X-20+3X

答: MOV AL, BUF ;取X

MOV BL, 3 MUL BL ;*3 MOV BL, BUF ;再取X MOV BH, 0 ;无符号数位数0扩展 SUB BX, 20 ;-20 ADD AX, BX ;计算结果并存入累加器 27. 分析下面的程序段完成什么功能? MOV CL,04 SHL DX,CL

MOV BL,AH SHL AX,CL SHR BL,CL OR DL,BL

答:程序段将 ((DX),(AX)) 的双字同时左移4位,即将此双字乘以10H (16)。

第 3 章 汇编语言程序设计

1. 什么是汇编语言?什么是汇编语言程序?什么是汇编?什么是汇编程序? 2. 一个完整的汇编语言程序结构上有什么特点?

3. 汇编语言有哪三种基本语句?它们各自的作用是什么?

4. 逻辑运算符与逻辑运算指令中的助记符有完全相同的符号,如何区别它们?作用有何不同? 5. 下面两条语句汇编后,两个字节存储单元NUM1和NUM2中的内容分别是什么?

NUM1 DB (12 OR 4 AND 2) GE 0EH NUM2 DB (12 XOR 4 AND 2) LE 0EH

答:(1)、NUM1中的内容是00H;因为12不大于等于0EH

(2)、NUM2中的内容是0FFH;因为12小于等于0EH 6. 下列指令执行后,字存储单元DA2中的内容是多少?

DA1 EQU BYTE PTR DA2 DA2 DW 0ABCDH

……

SHL DA1,1 SHR DA2,1

答:DA2中的内容是55CDH

7. 对下面的数据定义,各条MOV指令单独执行后,有关寄存器的内容是什么? NUMB1 DB ?

NUMB2 DW 20 DUP(?) NUMB3 DB ?USB?

1) MOV AX, TYPE NUMB1 2) MOV AX, TYPE NUMB2 3) MOV CX, LENGTH NUMB2 4) MOV DX, SIZE NUMB2

5) MOV CX, LENGTH NUMB3

答:1)、(AX)=1

2)、(AX)=2

3)、(CX)=0014H 4)、(DX)=0028H 5)、(CX)=1

8. 假设程序中的数据定义如下:

PNUM DW ?

PNAME DB 16 DUP(?) COUNT DD ?

PLETH EQU $-PNUM

问PLETH 的数值是多少?它代表什么意思? 答:(1)、PLETH 的数值是16H

(2)、表示自PNUM开始到PLETH为止的变量占用的存储单元数。 9. 程序中如何实现对各段寄存器和IP、栈顶的初始化?

10. 什么是宏?宏指令的功能是什么?宏与过程在汇编过程中,它们的目标代码

有什么区别? 11. 简述程序设计的步骤。

12. 编写程序,不用乘法计算Z=10×X+Y/8,用移位运算。

答: MOV AX, X

SHL AX, 1 ;AX乘2 MOV BX, AX SHL AX, 1 ;AX乘2 SHL AX, 1 ;AX乘2 ADD AX, BX ;8X+2X MOV BX, Y MOV CL, 3 SHR BX,CL ;无符号数Y/8 ADD AX, BX ;10×X+Y/8 MOV Z, AX

13. 编写程序,建立一数据表,表中连续存放1-9的平方,查表求某数字的平方。

答:TABLE DB 1*1,2*2,3*3,4*4,5*5,6*6,7*7,8*8,9*9

??

MOV BX, OFFSET TABLE MOV AL, n DEC AL XLAT ;n的平方即在AL中 14. 简述利用跳转表实现多路分支程序设计的思想。地址跳转表和指令跳转表只

要区别是什么? 15. 简述分支结构程序设计的注意事项。

16. 编写程序,将自定义的三个符号数X、Y、Z的最大者送入MAX字单元。

答:

MOV CMP JGE MOV

NEXT: CMP

JGE MOV

NEXT1: MOV AX, X AX, Y NEXT AX,Y AX, Z NEXT1 AX, Z MAX, AX

17. 在A、B、C中存在有三个数,编写程序完成如下处理:

1)若有一个数为零,则将其它两个量清为零。 2)若三个数都不为零,求它们的和,并送D中。 3)若三个数都为零,则将它们都置一。 答: CMP A, 0

JNZ NEXT CMP B, 0 JNZ NEXT1 CMP C, 0 JNZ NEXT1 MOV A, 1 MOV B, 1 MOV C, 1 JMP OK

NEXT: CMP B, 0

JZ NEXT1 CMP C, 0 JZ NEXT1 MOV AX, A ADD AX, B ADD AX, C MOV D, AX JMP OK

NEXT1: MOV A, 0

MOV B, 0 MOV C, 0

OK: …… 18. 循环结构程序由哪几部分组成?各部分的功能是什么? 19. 简述循环结构程序设计的注意事项。

20. 编写程序,将以STR1为首地址的字节串传送到以STR2 为首地址的字节存储区中。 21. 从偏移量DAT1开始存放200个带符号的字节数据,编写程序,找出其中最

小的数放入DATA2中。

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库《微机原理与接口技术》洪永强课后习题第2版(3)在线全文阅读。

《微机原理与接口技术》洪永强课后习题第2版(3).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/321425.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: