微机课后习题答案(2020年7月整理).pdf

上传人:摩西的****12 文档编号:141866076 上传时间:2020-08-13 格式:PDF 页数:12 大小:322.16KB
返回 下载 相关 举报
微机课后习题答案(2020年7月整理).pdf_第1页
第1页 / 共12页
微机课后习题答案(2020年7月整理).pdf_第2页
第2页 / 共12页
微机课后习题答案(2020年7月整理).pdf_第3页
第3页 / 共12页
微机课后习题答案(2020年7月整理).pdf_第4页
第4页 / 共12页
微机课后习题答案(2020年7月整理).pdf_第5页
第5页 / 共12页
点击查看更多>>
资源描述

《微机课后习题答案(2020年7月整理).pdf》由会员分享,可在线阅读,更多相关《微机课后习题答案(2020年7月整理).pdf(12页珍藏版)》请在金锄头文库上搜索。

1、 1 第第 1 章章 作作 业业 答案答案 1.1 微处理器、微型计算机和微型计算机系统三者之间有什么不同微处理器、微型计算机和微型计算机系统三者之间有什么不同? 把 CPU(运算器和控制器)用大规模集成电路技术做在一个芯片上,即为微 处理器。微处理器加上一定数量的存储器和外部设备(或外部设备的接口)构成了 微型计算机。微型计算机与管理、维护计算机硬件以及支持应用的软件相结合就形 成了微型计算机系统。 1.2 CPU 在内部结构上由哪几部分组成在内部结构上由哪几部分组成?CPU 应该具备哪些主要功能应该具备哪些主要功能? CPU 主要由起运算器作用的算术逻辑单元、起控制器作用的指令寄存器、指

2、令译码器、可编程逻辑阵列和标志寄存器等一些寄存器组成。其主要功能是进行算 术和逻辑运算以及控制计算机按照程序的规定自动运行。 1.3 微型计算机采用总线结构有什么优点微型计算机采用总线结构有什么优点? 采用总线结构,扩大了数据传送的灵活性、减少了连线。而且总线可以标准 化,易于兼容和工业化生产。 1.4 数据总线和地址总线数据总线和地址总线在结构上有什么不同之处在结构上有什么不同之处?如果一个系统的数据和地址合如果一个系统的数据和地址合 用一套总线或者合用部分总线用一套总线或者合用部分总线,那么要靠什么来区分地址和数据那么要靠什么来区分地址和数据? 数据总线是双向的(数据既可以读也可以写),而

3、地址总线是单向的。 8086CPU 为了减少芯片的引脚数量,采用数据与地址线复用,既作数据总线也作为 地址总线。它们主要靠信号的时序来区分。通常在读写数据时,总是先输出地址 (指定要读或写数据的单元),过一段时间再读或写数据。 第第 2 章章 作业作业 答案答案 2.1 IA-32 结构微处理器直至结构微处理器直至 Pentillm4,有哪几种有哪几种? 80386、30486、Pentium、Pentium Pro、PeruiumII、PentiumIII、Pentium4。 2.6 IA-32 结构微处理器有哪几种结构微处理器有哪几种操作模式操作模式? IA 一 32 结构支持 3 种操作

4、模式:保护模式、实地址模式和系统管理模式。操 作模式确定哪些指令和结构特性是可以访问的。 2.8 IA-32 结构微处理器的结构微处理器的地址空间地址空间如何形成?如何形成? 由段寄存器确定的段基地址与各种寻址方式确定的有效地址相加形成了线性地 址。若末启用分页机制,线性地址即为物理地址;若启用分页机制,则它把线性地 址转为物理地址。 2.15 8086 微处理器的总线接口部件由哪几部分组成微处理器的总线接口部件由哪几部分组成? 8086 微处理器中的总线接口单元(BIU)负责 CPU 与存储器之间的信息传 送。具体地说,BIU 既负责从内存的指定部分取出指令,送至指令队列中排队 (8086

5、的指令队列有 6 个字节,而 8088 的指令队列只有 4 个字节);也负责传送执 行指令时所需的操作数。执行单元(EU)负责执行指令规定的操作。 2.16 段寄存器段寄存器 CS=120OH,指令指针寄存器指令指针寄存器 IP=FFOOH,此时此时,指令的物理地址为指令的物理地址为 多少多少? 指令的物理地址=12000H+FFOOH=21FOOH 第第 3 章章 作作 业答案业答案 3.1 分别指出下列指令中的源操作数和目的操作数的寻址方式分别指出下列指令中的源操作数和目的操作数的寻址方式。 (1)MOV SI, 30O (2)MOV CX, DATADI (3)ADD AX, BXSI

6、(4)AND AX, CX (5)MOVBP, AX 2 (6)PUSHF (l)源操作数为立即寻址,目的操作数为寄存器寻址。 (2)源操作数为变址寄存器加位移量寻址,目的操作数为寄存器寻址。 (3)源操作数为基址加变址寻址,目的操作数为寄存器寻址。 (4)源操作数和目的操作数都为寄存器寻址。 (5)源操作数为寄存器寻址,目的操作数为寄存器间接寻址。 (6)为堆栈操作。 3.2 试述指令试述指令 MOVAX,2000H 和和 MOV AX,DSz2000H的区别。的区别。 解:前一条指令是立即寻址,即把立即数 2000H 传送至寄存器 AX。后一条指令 是直接寻址,是把数据(DS)段中的地址为

7、 200OH 单元的内容传送至寄存器 AX。 3.3 写出以下指令中内存操作数的所在地址。写出以下指令中内存操作数的所在地址。 (1)MOV AL, BX+10 (2)MOV BP+10, AX (3)INC BYTEPTRSI 十十 5 (4)MOV DL, ES:BX+SI (5)MOV BX,BP+DI+2 (1)数据段 BX+10 单元。 (2)堆栈段 BP+10 单元。 (3)数据段 SI+5 字节单元。 (4)附加段(ES 段)BX+SI 单元。 (5)堆栈段 BP+DI+2 单元。 3.4 判判断下列指令书写是否正确。断下列指令书写是否正确。 (1)MOV AL, BX (2)M

8、OV AL, CL (3)INC BX (4)MOV 5, AL (5)MOV BX,SI (6)M0V BL, OF5H (7)MOV DX, 2000H (8)POP CS (9)PUSH CS (l)不正确,AL 与 BX 数据宽度不同。 (2)正确。 (3)不正确,因为不明确是增量字节还是字。 (4)不正确,立即数不能作为目的操作数。 (5)不正确,因为不明确要传送的是字节还是字。 (6)正确。 (7)正确。 (8)不正确,CS 不能作为:pop 指令的操作数。 (9)不正确,CS 不能作为 PUSH 指令的操作数。 3.5 设堆设堆钱指针钱指针 SP 的初值为的初值为 1000H,A

9、X=2000H,BX=3000H,试问:试问: (1)执行指令 PUSH AX 后 SP 的值是多少? (2)再执行 PUSHBX 及 POPAX 后,SP、AX 和 BX 的值各是多少? (1)SP=OFFEH。 3 (2)SP=OFFEH;AX=3000H,BX=3000H。 3.6 要想完成把要想完成把3000H送送2000H中中,用指令:用指令: MOM200OH,300OH 是否正确是否正确?如果不正确如果不正确,应该用什么方法实现应该用什么方法实现? 解:不正确。 正确的方法是: MOV AL, 300OH MOV 2000H ,AL 3.7 假如想从假如想从 200 中减去中减去

10、 AL 中的内容中的内容,用用 SUB 200,AL 是否正确是否正确?如果不正确如果不正确,应该应该 用什么方法用什么方法? 解:不正确。 正确的方法是: MOV BL, 200 SUB BL,AL 3.8 试用两种方法写出从试用两种方法写出从 8OH 端口读入信息的指令。再用两种方法写出从端口读入信息的指令。再用两种方法写出从 4OH 口输口输 出出 10OH 的指令的指令。 (1)IN AL, 80H (2)MOV DX,8OH IN AL, DX (3)MOV,AL,lOOH OUT40H,AL 4)MOV AL,10OH MOV DX,4OH OUT DX,AL 3.9 假如假如:A

11、L=20H,BL=1OH,当执行当执行 CMPAL,BL 后后,问问: (1)AL、BL 中的内容是两个无符号数中的内容是两个无符号数,比较结果如何比较结果如何?影响哪儿个标志位影响哪儿个标志位? (2)AL、BL 中的内容是两个有符号数中的内容是两个有符号数,结果又如何结果又如何,影响哪几个标志位影响哪几个标志位? (l)AL=2OH,BL=1OH,O=0,S=0,Z=0,A=0,P=0,C=0。 (2)因为两个都是符号正数,其结果与(l)相同。 3.10 若要使若要使 AL10,有哪几种有哪几种方法方法,试试编写出各自的程序段编写出各自的程序段? (1) 使用乘法指令: MOVBL,10

12、MULBI, (2)使用移位指令: SHLAL,1 MOVBL,AL SHLAL,2 ADDAL,BL (3)使用加法指令: ADDAL,AL MOVBL,AL ADDAL,AL ADDAL,AL ADDAL,BL 3.118086 汇编语言指令的寻址方式有哪几类汇编语言指令的寻址方式有哪几类?哪种寻址方式的指令执行速度最快哪种寻址方式的指令执行速度最快? 解:寻址方式分为:立即数寻址方式、寄存器操作数寻址方式和存储器操作数寻 址方式。其中,寄存器操作数寻址方式的指令执行速度最快。 4 3.12 在直接寻址方式中在直接寻址方式中,一般只指出操作数的偏移地址一般只指出操作数的偏移地址,那么那么,

13、段地址如何确定段地址如何确定?如如 果要用某个段寄存器指出段地址果要用某个段寄存器指出段地址,指令中应该如何表示指令中应该如何表示? 默认的数据访问,操作数在 DS 段;堆栈操作在 SS 段;串操作源操作数(SI)在 DS 段, 目的操作数(DI)在 ES 段;用 BP 作为指针在 SS 段。如果要显式地指定段地址,则在 操作数中规定段寄存器。例如: MOVAX,ES:(BX+10H) 3.13 在在寄存器间接寻址方式中寄存器间接寻址方式中,如果指令中没有具体指明段寄存器如果指令中没有具体指明段寄存器,那么如何确定那么如何确定 段地址段地址? 在寄存器间接寻址方式中,如果指令中没有具体指明段寄

14、存器,段地址是 隐含约定的,也就是隐含地选择段寄存器。如操作类型为指令,则指定代码段寄 存器 CS,如操作类型为堆栈操作,则指定堆找段寄存器 SS,如表 3-1 中所示。 当需要超越约定时,通常用段替代前缀加冒号:来表示段超越,它允许程序设 计者偏离任何约定的段。 例如: MOV ES:BX ,AX 这时数据将从寄存器 EAX 传送至附加段中由 EBX 寻址的存储单元,而不是传送 到数据段中。 3.14 采用寄存器间接寻址方式时采用寄存器间接寻址方式时,BX、BP、SI、DI 分别针对什么情况来使用分别针对什么情况来使用?这这 4 个个 寄存器组合间接寻址时寄存器组合间接寻址时,地址是怎样计算

15、的地址是怎样计算的?请举例说明。请举例说明。 解: 在寄存器间接寻址方式下,BX 和 BP 作为间址寄存器使用,而 SI、DI 作为 变址寄存器使用。除 BP 间址默认的段为堆栈段,其他的都默认为数据段。它们 都可以单独使用,或加上偏移量或组合使用。如: BX+n LBP+n SI+n DI+n BX+SI+n BX+DI+n BP+SI+n BP+DI+n 3.15 设设 DS=2100H,SS=5200H,BX=1400H,BP=6200H,说明下面两条指令所进行说明下面两条指令所进行 的具体操作的具体操作: MOVBYTEPTRBP,200 MOVWORDPTRBX,2000 解:前一条指令是把立即数(应是字节)200,传

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 大杂烩/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号