ImageVerifierCode 换一换
格式:DOCX , 页数:31 ,大小:95.15KB ,
资源ID:10330909      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-10330909.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(32位微机原理汇编语言与接口技术教程课后习题答案.docx)为本站会员(b****1)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

32位微机原理汇编语言与接口技术教程课后习题答案.docx

1、32位微机原理汇编语言与接口技术教程课后习题答案16/32位微机原理、汇编语言及接口技术教程部分习题参考解答第1章 微型计算机系统概述习题1.2什么是通用微处理器、单片机(微控制器)、DSP芯片、嵌入式系统?解答通用微处理器:适合较广的应用领域的微处理器,例如装在PC机、笔记本电脑、工作站、服务器上的微处理器。单片机:是指通常用于控制领域的微处理器芯片,其内部除CPU外还集成了计算机的其他一些主要部件,只需配上少量的外部电路和设备,就可以构成具体的应用系统。DSP芯片:称数字信号处理器,也是一种微控制器,其更适合处理高速的数字信号,内部集成有高速乘法器,能够进行快速乘法和加法运算。嵌入式系统:

2、利用微控制器、数字信号处理器或通用微处理器,结合具体应用构成的控制系统,其典型的特点是把计算机直接嵌入到应用系统之中。习题1.5说明微型计算机系统的硬件组成及各部分作用。解答CPU:CPU也称处理器,是微机的核心。它采用大规模集成电路芯片,芯片内集成了控制器、运算器和若干高速存储单元(即寄存器)。处理器及其支持电路构成了微机系统的控制中心,对系统的各个部件进行统一的协调和控制。存储器:存储器是存放程序和数据的部件。外部设备:外部设备是指可与微机进行交互的输入(Input)设备和输出(Output)设备,也称I/O设备。I/O设备通过I/O接口与主机连接。总线:互连各个部件的共用通道,主要含数据

3、总线、地址总线和控制总线信号。习题1.6什么是总线?微机总线通常有哪3组信号?各组信号的作用是什么?解答总线:传递信息的共用通道,物理上是一组公用导线。3组信号线:数据总线、地址总线和控制总线。(1)地址总线:传输将要访问的主存单元或I/O端口的地址信息。(2)数据总线:传输读写操作的数据信息。(3)控制总线:协调系统中各部件的操作。习题1.7简答如下概念:(1)计算机字长(2)取指译码执行周期(3)ROM-BIOS(4)中断(5)ISA总线解答(1)处理器每个单位时间可以处理的二进制数据位数称计算机字长。(2)指令的处理过程,即指处理器从主存储器读取指令(简称取指),翻译指令代码的功能(简称

4、译码),然后执行指令所规定的操作(简称执行)的过程。(3)ROM-BIOS是“基本输入输出系统”,操作系统通过对BIOS的调用驱动各硬件设备,用户也可以在应用程序中调用BIOS中的许多功能。(4)中断是CPU正常执行程序的流程被某种原因打断、并暂时停止,转向执行事先安排好的一段处理程序,待该处理程序结束后仍返回被中断的指令继续执行的过程。(5)ISA总线是指IBM PC/AT机上使用的系统总线。习题1.8下列十六进制数表示无符号整数,请转换为十进制形式的真值:(1)FFH (2)0H (3)5EH (4)EFH解答(1) 255(2) 0(3) 94(4) 239习题1.9将下列十进制数真值转

5、换为压缩BCD码:(1)12 (2)24 (3)68 (4)99解答(1) 12H(2) 24H(3) 68H(4) 99H习题1.10将下列压缩BCD码转换为十进制数:(1) (2) (3) (4)解答(1) 91(2) 89(3) 36(4) 90习题1.11将下列十进制数用8位二进制补码表示:(1)0 (2)127 (3)127 (4)57解答(1) 0(2) 01111111(3) 10000001(4) 11000111习题1.12数码09、大写字母AZ、小写字母az对应的ASCII码分别是多少?ASCII码0DH和0AH分别对应什么字符?解答数码09对应的ASCII码依次是30H3

6、9H。大写字母AZ对应的ASCII码依次是:41H5AH。小写字母az对应的ASCII码依次是:617AH。ASCII码0DH和0AH分别对应的是回车和换行字符。第2章 微处理器指令系统习题2.1微处理器内部具有哪3个基本部分?8088分为哪两大功能部件?其各自的主要功能是什么?这种结构与8位CPU相比为什么能提高其性能?解答算术逻辑单元ALU、寄存器组和控制器;总线接口单元BIU:管理8088与系统总线的接口负责cpu对接口和外设进行访问执行单元EU:负责指令译码、执行和数据运算;8位cpu在指令译码前必须等待取指令操作的完成,8088中需要译码的指令已经取到了指令队列,不需要等待取指令。而

7、取指令是cpu最为频繁的操作,因此8088的结构和操作方式节省了大量等待时间,比8位cpu节省了时间,提高了性能。习题2.2说明8088的8个8位和8个16位通用寄存器各是什么?解答8个8位寄存器:AH、AL、BH、BL、CH、CL、DH、DL;8个16位寄存器:累加器AX、基址寄存器BX、计数器CX、数据寄存器DX、源地址寄存器SI、目的地址寄存器DI、基址指针BP、堆栈指针SP。习题2.4举例说明CF和OF标志的差异。解答例:有运算:3AH+7CH=B6H作为无符号数运算,没有进位,CF=0;作为有符号数运算,结果超出范围,OF=1.习题2.5什么是8088中的逻辑地址和物理地址?逻辑地址

8、如何转换成物理地址?1MB最多能分成多少个逻辑段?请将如下逻辑地址用物理地址表达:FFFFH:0 40H:17H2000H:4500HB821H:4567H解答物理地址:物理存储单元具有的一个唯一的20位编号逻辑地址:在8088内部和用户编程时,所采用的“段地址:偏移地址”形式将逻辑地址中的段地址左移二进制4位(对应16进制是一位,即乘以16),加上偏移地址就得到20位物理地址1MB最多能分成1MB16B22024216个逻辑段,因为每隔16个字节单元就可以开始一个逻辑段 FFFFH:0FFFF0H 40H:17H00417H 2000H:4500H24500H B821H:4567HBC77

9、7H习题2.8已知DS2000H、BX0100H、SI0002H,存储单元20100H20103H依次存放12H、34H、56H、78H,21200H21203H依次存放2AH、4CH、B7H、65H,说明下列每条指令执行完后AX寄存器的内容,以及源操作数的寻址方式? mov ax,1200h mov ax,bx mov ax,1200h mov ax,bx mov ax,bx+1100h mov ax,bx+si mov ax,bxsi+1100h解答 mov ax,1200h ;AX1200H,立即数寻址 mov ax,bx ;AX0100H,寄存器寻址 mov ax,1200h ;AX4

10、C2AH,直接寻址 mov ax,bx ;AX3412H,寄存器间接寻址 mov ax,bx+1100h ;AX4C2AH,寄存器相对寻址 mov ax,bx+si ;AX7856H,基址变址寻址 mov ax,bxsi+1100h ;AX65B7H,相对基址变址寻址习题2.9说明下面各条指令的具体错误原因 mov cx,dl mov ip,ax mov es,1234h mov es,ds mov al,300 mov sp,ax mov ax,bx+di mov 20h,ah解答(1)cx为字寄存器,dl为字节寄存器,类型不匹配。(2)mov指令的目的操作数只能是寄存器或者主存单元,ip是

11、指针。(3)不允许立即数到段寄存器的传送。(4)不允许段寄存器之间的直接传送。(5)数据溢出。(6)sp不能用于寄存器间接寻址。(7)格式不对。应为:mov ax,bx+di(8)mov指令的操作数不能是立即数。习题2.10已知数字09对应的格雷码依次为:18H、34H、05H、06H、09H、0AH、0CH、11H、12H、14H,它存在于以table为首地址(设为200H)的连续区域中。请为如下程序段的每条指令加上注释,说明每条指令的功能和执行结果。lea bx,tablemov al,8xlat解答lea bx,table ;获取table的首地址,BX200Hmov al,8 ;传送欲

12、转换的数字,AL8xlat ;转换为格雷码,AL12H习题2.11给出下列各条指令执行后AL值,以及CF、ZF、SF、OF和PF的状态:mov al,89hadd al,aladd al,9dhcmp al,0bchsub al,aldec alinc al解答mov al,89h ;AL89H CF ZF SF OF PFadd al,al;AL12H1 0 0 1 1add al,9dh ;AL0AFH 0 0 1 0 1cmp al,0bch ;AL0AFH 1 0 1 0 1sub al,al;AL00H0 1 0 0 1dec al ;AL0FFH 0 0 1 0 1inc al ;

13、AL00H 0 1 0 0 1习题2.12请分别用一条汇编语言指令完成如下功能: 把BX寄存器和DX寄存器的内容相加,结果存入DX寄存器。 用寄存器BX和SI的基址变址寻址方式把存储器的一个字节与AL寄存器的内容相加,并把结果送到AL中。 用BX和位移量0B2H的寄存器相对寻址方式把存储器中的一个字和CX寄存器的内容相加,并把结果送回存储器中。 用位移量为0520H的直接寻址方式把存储器中的一个字与数3412H相加,并把结果送回该存储单元中。 把数0A0H与AL寄存器的内容相加,并把结果送回AL中解答 add dx,bx add al,bx+siadd bx+0b2h,cx add word

14、ptr 0520h,3412h add al,0a0h习题2.13设有4个16位带符号数,分别装在X、Y、Z、V存储单元中,阅读如下程序段,得出它的运算公式,并说明运算结果存于何处。mov ax,Ximul Ymov cx,axmox bx,dxmov ax,Zcwdadd cx,axadc bx,dxsub cx,540sbb bx,0mov ax,Vcwdsub ax,cxsbb dx,bxidiv X解答(V-(X*Y+Z-540)/X习题2.14给出下列各条指令执行后的结果,以及状态标志CF、OF、SF、ZF、PF的状态。mov ax,1470hand ax,axor ax,axxor

15、 ax,axnot axtest ax,0f0f0h解答mov ax,1470h ;AX1470H CF ZF SF OF PFand ax,ax ;AX1470H 0 0 0 0 0or ax,ax ;AX1470H 0 0 0 0 0xor ax,ax ;AX0000H 0 1 0 0 1not ax ;AXFFFFH 0 1 0 0 1test ax,0f0f0h ;AXFFFFH 0 0 1 0 1习题2.15控制转移类指令中有哪三种寻址方式?解答相对寻址、直接寻址、间接寻址(还可以分成寄存器间接、存储器间接)习题2.16假设DS2000H、BX1256H、TABLE的偏移地址是20A

16、1H,物理地址232F7H处存放3280H,试问执行下列段内间接寻址的转移指令后,转移的有效地址是什么? JMP BX JMP TABLEBX解答(1)1256H(2)3280H习题2.17判断下列程序段跳转的条件xor ax,1e1ehje equaltest al,10000001bjnz therecmp cx,64hjb there解答AX1e1eh(异或后为0)AL的D0或D7至少有一位为1CX(无符号数) 64h习题2.18如下是一段软件延时程序,请问NOP指令执行了多少次? xor cx,cxdelay: nop loop delay解答216次习题2.20按照下列要求,编写相应

17、的程序段: 由string指示起始地址的主存单元中存放有一个字符串(长度大于6),把该字符串中的第1个和第6个字符(字节量)传送给DX寄存器。 有两个32位数值,按“小端方式”存放在两个缓冲区buffer1和buffer2中,编写程序段完成DX.AXbuffer1buffer2功能。 编写一个程序段,在DX高4位全为0时,使AX0;否则使AX1。 把DX.AX中的双字右移4位 有一个100个字节元素的数组,其首地址为array,将每个元素减1(不考虑溢出或借位)存于原处。解答(1)mov dl,string1 mov dh,string6(2) mov ax, word ptr buffer1

18、 sub ax, word ptr buffer2 ; 先减低16位 mov dx, word ptr buffer1+2 sbb dx, word ptr buffer2+2 ; 后减高16位,需减低16位的借位(3) test dx,0f000h jz next mov ax,-1 jmp donenext: mov ax,0done: (4) mov cx,4again: shr dx,1 ; 右移一位,移出的低位进入CF标志 rcr ax,1 ; 将CF移进AX高位,同时实现AX右移 loop again ; 循环4次,实现4位右移(5) mov cx,100 mov bx,0agai

19、n: sub arraybx,1 inc bx loop again 第3章 汇编语言程序设计习题3.9给出下列语句中,指令立即数(数值表达式)的值: mov al,23h AND 45h OR 67h mov ax,1234h/16+10hmov ax,23h SHL 4 mov al,a AND (NOT(a-A) mov ax,(76543 LT 32768) XOR 7654h解答(1) al=67h(2) ax=133h,dx=4h(3) ax=0230h(4) al=41h(5) ax=7654h习题3.10画图说明下列语句分配的存储空间及初始化的数据值: byte_var db

20、ABC,10,10h,EF,3 dup(-1,?,3 dup(4) word_var dw 10h,-5,3 dup(?)解答(1)从低地址到高地址,各个字节依次是:41h 42h 43h 0ah 10h 45h 46h ffh - 04h 04h 04h ffh - 04h 04h 04h ffh - 04h 04h 04h(2)从低地址到高地址,各个字节依次是:10h 0 FBhFFh - - - - - -其中“-”表示无初值,实际上汇编程序会填入0。习题3.11请设置一个数据段,按照如下要求定义变量: my1b为字符串变量,表示字符串“Personal Computer” my2b为用

21、十进制数表示的字节变量,这个数的大小为20 my3b为用十六进制数表示的字节变量,这个数的大小为20 my4b为用二进制数表示的字节变量,这个数的大小为20 my5w为20个未赋值的字变量 my6c为100的符号常量 my7c为字符串常量,代替字符串“Personal Computer”解答my1b db Personal Computermy2b db 20my3b db 14hmy4b db 00010100bmy5w dw 20 dup(?)my6c = 100my7c equ 习题3.15假设myword是一个字变量,mybyte1和mybyte2是两个字节变量,指出下列语句中的具体错

22、误原因。 mov byte ptr bx,1000 mov bx,offset mywordsi cmp mybyte1,mybyte2 mov mybyte1,al+1 sub al,myword jnz myword解答(1) 1000 超过一个字节所能表达的最大整数(2)SI 应为偶数(3)两个内存单元不能直接运算(4)不能使用al+1,应改为al+1(5)源操作数与目的操作数类型不匹配(6)条件转移指令后面应接标号,而不是变量习题3.16编写一个程序,把从键盘输入的一个小写字母用大写字母显示出来。解答mov ah,1 ;只允许输入小写字母int 21hsub al,20h ;转换为大写

23、字母mov dl,almov ah,2int 21h ;显示第4章 微机总线习题4.1微机总线的信号线包括_、_、_、以及电源和地线。微机系统可以将总线划分为三层(类),它们是_、_和_。解答数据总线、地址总线、控制总线芯片总线、内总线、外总线习题4.2占用总线进行数据传输,一般需要经过总线请求和仲裁、_、_和结束4个阶段。解答寻址,数据传送习题4.7执行一条指令所需要的时间被称为_周期,而总线周期指的是_,8088基本的总线周期由_个T组成。如果8088的CLK引脚接5MHz的时钟信号,那么每个T状态的持续时间为_。解答指令CPU通过总线操作与外界(存储器和I/O端口)进行一次数据交换的过程

24、(时间)4200ns习题4.8请解释8088以下引脚信号:CLK、A19/S6A16/S3、A15A8、AD7AD0、ALE的含义,并画出它们在存储器写总线周期中的波形示意。解答CLK:CPU时钟信号A19/S6A16/S3:地址信号A19A16和状态信号S6S3分时复用信号A15A8:地址信号A15A8AD7AD0:地址信号A7A0和数据信号D7D0分时复用信号IO/M*:I/O接口和存储器操作区别信号RD*:读控制信号,WR*:写控制信号ALE:地址锁存信号习题4.9在8088的工作过程中,什么情况下会产生TW?具体发生在什么时刻?解答n当8088进行读写存储器或I/O接口时,如果存储器或

25、I/O接口无法满足CPU的读写时序(来不及提供或读取数据时),需要CPU插入等待状态Tw。n在读写总线周期的T3和T4之间插入Tw。习题4.11在8088系统中,读取指令“ADD 2000H, AX”(指令长度为3个字节)和执行该指令各需要几个总线周期?它们各是什么样的总线周期?解答n8088每个总线周期只能读写一个字节数据。所以读取指令长度为3个字节的指令“ADD 2000H, AX”需要 3 个时钟周期,执行时需要 2 个时钟周期。n读取指令是存储器读总线周期,执行时是存储器写总线周期。第5章 主存储器习题5.3类似处理器总线,存储器芯片也分成数据、地址和控制3类引脚。以存储结构为32K8

26、的SRAM 62256为例,该芯片应有_个数据引脚、_个地址引脚,3个典型的控制引脚分别是_、_和_。解答815片选输出允许写入允许习题5.7EEPROM的擦写与闪存的擦写有什么不同?以AT28C040或AT29C512为例,说明常用的两种判断擦写是否完成的方法,并估算两者完成整个芯片编程的最快时间。解答AT28C040最快编程时间:(5121024/256)10ms20480ms20sAT29C512最快编程时间:512扇区(10ms128字节(15010-39010-6)ms)14950.4ms15s习题5.8SRAM芯片的片选引脚有什么用途?假设在8088微处理器系统中,地址信号A19A

27、15输出01011时译码电路产生一个有效的片选信号,则该片选信号将占有多少主存容量?其地址范围是什么?解答主存容量:21532KB,因低位地址信号的个数是15个。地址范围:010000000 01111111,即58000H5FFFFH。习题5.11什么是存储器芯片连接中的“位扩展”和“字扩展”?采用DRAM 21256(256K1)构成512KB的RAM存储模块,需要多少个芯片,怎样进行位扩展和字扩展?解答位扩充:存储器芯片数据引脚个数小于主机数据信号个数时,利用多个存储器芯片在数据“位”方向的扩充。字扩充:当一个存储器芯片不能满足系统存储容量时,利用多个存储器芯片在“数据字”方向的扩充。组

28、成512KB存储模块,用DRAM 21256(256K1)需要16个芯片;位扩充8个,字扩充2组。习题5.13给出图5-28中4个存储器芯片各自占用的地址范围。如果采用部分译码,要指出重复的地址范围。解答4个存储芯片各自的可用地址范围:芯片号A19A18A17A16A15A0地址范围12340001111101全0全1全0全1全0全1全0全100000H3FFFFH40000H7FFFFHC0000HCFFFFH,重复地址:E0000HEFFFFHD0000HDFFFFH,重复地址:F0000HFFFFFH第6章 输入输出接口习题6.1典型的I/O接口电路通常有哪3类可编程寄存器?各自的作用是什么?解答(1)数据寄存器:保存外设给CPU和CPU发往外设的数据(2)状态寄存器:保存外设或接口电路的状态(3)控制寄存器:保存CPU给外设或接口电路的命令习题6.2I/O端口与存储器地址常有_

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2