微机原理与汇编习题答案
第一章
微型计算机概论
1.
单项选择题
(1) C ; (2) A ; (3) B ; (4) D ; (5) C
2.填空题
(1) 1946年 ;(2)硬件系统,软件系统 ; (3)二进制数 ; (4)执行程序 ;
(5) 只读存储器
3.名词解释
(1) 主机:在硬件系统中,CPU、内存、输入输出接口统称为主机。
(2) 微处理器:把CPU集成在一个半导体芯片上,这种具有中央处理器功能的大规模集成电路被称为微处理器。
(3) 总线:总线是一组连接计算机各部件的公共通信线路,此时各部件之间的通信关系是面向总线的单一关系。
(4) 存贮器:用于存放数据的部件。计算机存贮器可分为两大类:内存和外存。内存是CPU能直接寻址的地址空间。外存是辅助存贮设备。
4.简答题
(1)计算机采用存储程序的方式工作,程序由指令和数据组成。将编好的程序送入计算机的内存贮器中,然后启动计算机工作,计算机无需操作人员干预,能自动逐条取出指令,分析指令和执行指令。计算机的工作过程就是执行程序的过程。
(2)微型计算机通常由微处理器、存贮器、输入输出接口、总线以及其它支持逻辑电路组成。
(3)衡量微型计算机系统的主要技术指标有:字长、运算速度、存贮器容量、总线类型与总线速度、主板与芯片组类型、外设配置、软件配置。
第二章 计算机中的信息表示方法
1.解:(1)
(2)
(3)
(4)
2.解:(1)
原码是在数N的最高位增加一个符号位,“1”表示正,“0”表示负。
正数的反码与原码相同,负数的反码符号位为“1”,数值为原码按位取反。
正数的补码与原码相同,负数的补码符号位为“1”,数值为原码按位取反加一。
(2)
把0作为有符号数时,0在原码和补码中各有两种不同的表示形式,而在补码表示法中,0的形式是唯一的。
(3) ,
,
3.解:已知补码求原码时,正数的原码、反码和补码都相同;如为负数,则符号位保持“1”不变,数值部分为补码的数值部分取反加一。
,
,
小数的原码、反码和补码中,最高位为符号位,而小数的整数部分0不表示出来。
4.解:原码运算时符号位不参加运算,参加运算的只是数值部分,而反码和补码的符号位和数值位一样参加运算。
(1)
结果为负数的补码,再求出原码
,
结果为负数的反码,再求出原码
,
(2)
,
,
5.解:8421BCD码不能直接转换为二进制数,先把BCD码按规则转换为十进制数,再进行十进制到二进制的转换。
(1)
(2)
十进制数0.9不能用有限位二进制小数表示,按误差要求取足够的位数即可。
第三章 80X86微处理器
1.选择题
(1) D ; (2) D ; (3) C ; (4) A ; (5) B
2.填空题
(1)20,4,状态信息 ;(2)FFFF0H,内存储器,无条件转移 ;(3)64K,16字节
(4)线性地址,物理地址 ; (5)多媒体
3.名词解释
(1)指令队列:指令队列是总线接口部件预先从内存读取的几条指令。指令队列的存在使总线接口部件(BIU)和执行部件(EU)并行工作,减少了CPU为取指令而等待的时间,从而加快运行速度。
(2) 逻辑地址:段地址与偏移地址的合称,用“段地址:偏移地址”表示。是程序员在编程时使用的地址。
(3)物理地址:物理地址是存储器的实际地址,对应于CPU的地址线引脚的信号。
(4)段描述符:段描述符是保护方式下为寻址存储器而引入的一种数据结构,它用来描述数据段、堆栈段以及代码段在存储器中的起始位置、段的界限值和访问权限。
(5) CISC:CISC是指复杂指令集。基本特点为:复杂指令;多种内存寻址方式;微程序结构。
4.简答题
(1)答:8086/8088分为总线接口部件(BIU)和执行部件(EU)两部分。
总线接口部件(BIU)包括4个16位的段寄存器、1个16位指令指针寄存器,先入先出的指令队列、20位地址加法器及总线控制逻辑。
执行部件(EU)包括8个16位的通用寄存器、1个16位的标志寄存器、ALU及EU控制电路。
(2)解:数据段的物理地址范围:021F0H~121EFH
扩展段的物理地址范围:0A320H~1A31FH
代码段的物理地址范围:234E0H~334DFH
(3)解:当CPU访问存贮器时或I/O端口的信号主要是M/IO,ALE,RD,WR,DT/R,DEN等。当HOLD信号有效并得到相应时,地址/数据引脚、地址/状态引脚、控制信号引脚M/IO,ALE,RD,WR,DT/R,INTA都处于高阻。
(4)解:堆栈段在存贮器中的物理地址范围为 25800H~26000H。若当前堆栈中已存有10个字节的数据,那么SP的值应为07F6H。
(5)答:分段部件将逻辑地址通过描述符的数据结构行程32位的线性地址,分页部件接受到线性地址后,通过两次页转换将其变换为32位物理地址。CR0 寄存器的PG=1时,启动分页。段的大小在4G内可变,页的大小为4K。如果一个页面的首地址为ABC05000H,则下一个页面的首地址为ABC06000H。
第四章 指令系统寻址方式
1.(1)立即数寻址
(2)变址寻址
(3)寄存器寻址 (4)基址加变址寻址
2.(1)不合法,原操作数与目的操作数不匹配
(2)不合法,立即数不能与CS直接传送。
(3)不合法,I/O端口的地址超过255时,要用间址的方式。
(4)不合法,立即数不能为目的操作数。
3.(1),(SP)=1FFEH
(2)(AX)=3355H,(DX)=4466H,(SP)=1FFEH
4.
MOV SI,1000H
;SI指向第一个数据
MOV DI,2000H
;DI指向第二个数据
MOV CX,8 ;共有8字节长
CLC
;清除进位标志
LOOP:MOV AL,[SI] ;取第一个数据的一个字节
ADC AL, [DI] ;加第二个数据的相应字节
DAA
;十进制调整
MOV [DI],AL ;存到指定的内存区域
INC SI
;指向下一个字节
INC DI
;指向下一个字节
DEC CX
;计数器减一
JNZ LOOP ;未算完,继续
…….
(5) CLD ;清除方向标志
LEA DI,[0404] ;将目的地址0404H送DI
MOV CX,0080H ;共有128个字
XOR AX,AX ;AX清0
REP STOSW ;将256个字节清0
(6) MOV CX,28H ;数组长度为28H,即40个元素。
MOV SI,0FFH ;数组元素号从0开始,先设为FFH
NEXT: INC SI ;当前数组序号放在SI中
CMP BYTE PTR [SI],0 ;判断此元素是否为0
JOOPZ NEXT ;当Z=1,且CX不等于0时,即当前元素为0且未找完,则继续找
JNZ OKK ;当找到一个非0元素时,转OKK
CALL DISPLAY1 ;若未找到任何一个非0元素,显示出错信息
RET
OKK: CALL DISPLAY2 ;若找到非0元素,显示此元素。
RET