微机原理第二版+田辉+课后答案(1)

上传人:gbs****77 文档编号:10943780 上传时间:2020-04-16 格式:DOC 页数:66 大小:514.50KB
返回 下载 相关 举报
微机原理第二版+田辉+课后答案(1)_第1页
第1页 / 共66页
微机原理第二版+田辉+课后答案(1)_第2页
第2页 / 共66页
微机原理第二版+田辉+课后答案(1)_第3页
第3页 / 共66页
点击查看更多>>
资源描述
课后答案网,用心为你服务! 大学答案 - 中学答案 - 考研答案 - 考试答案 最全最多的课后习题参考答案,尽在课后答案网(www.khdaw.com)!Khdaw团队一直秉承用心为大家服务的宗旨,以关注学生的学习生活为出发点,旨在为广大学生朋友的自主学习提供一个分享和交流的平台。 爱校园(www.aixiaoyuan.com) 课后答案网(www.khdaw.com) 淘答案(www.taodaan.com) 第 1 章 微型计算机系统概述习题1-1微型计算机包括哪几个主要组成部分,各部分的基本功能是什么?答:微型计算机由 CPU、存储器、输入/输出接口及系统总线组成。CPU是微型计算机的核心部件,一般具有下列功能:进行算术和逻辑运算。暂存少量数据。对指令译码并执行指令所规定的操作。与存储器和外设进行数据交换的能力。提供整个系统所需要的定时和控制信号。响应其他部件发出的中断请求;总线是计算机系统各功能模块间传递信息的公共通道,一般由总线控制器、总线发送器、总线接收器以及一组导线组成;存储器是用来存储数据、程序的部件;I/O接口是微型计算机的重要组成部件,在CPU和外设之间起适配作用。1-2CPU 执行指令的工作过程。答:取指令、执行指令。指令执行的基本过程:(1)开始执行程序时,程序计数器中保存第一条指令的地址,指明当前将要执行的指令存放在存储器的哪个单元。(2)控制器:将程序计数器中的地址送至地址寄存器MAR,并发出读命令。存储器根据此地址取出一条指令,经过数据总线进入指令寄存器IR。(3)指令译码器译码,控制逻辑阵列发操作命令,执行指令操作码规定的操作。(4)修改程序计数器的内容。1-3果微处理器的地址总线为 20 位,它的最大寻址空间为多少?201-4处理器、微型计算机和微型计算机系统之间有什么关系?答:微处理器是微型计算机的核心部件。微处理器配上存储器、输入/输出接口及相应的外设构成完整的微型计算机。以微型计算机为主体,配上系统软件和外部设备以后,就构成了完整的微型计算机系统。1-5下面十进制数分别转换为二进制、八进制和十六进制数:128,65535,1024答:128,二进制:10000000B,八进制:200O,十六进制:80H65535,二进制:1111111111111111B,八进制:177777O,十六进制:FFFFH1024, 二进制:10000000000B,八进制:2000O,十六进制:400H1-6下面二进制数分别转换为十进制及十六进制数:1011.1010B,1111101.11 B答:1011.1010B,十进制:11.625,十六进制:B.AH答: 2 =1048576=1MB1111101.11B,十进制:125.75,十六进制:7D.CH1-7(5487)10(0101010010000111)BCD 1010101101111 B1-8设字长为 8 位,请写出下列数的原码、反码、补码和移码:15,20,27/32答:+15原 =00001111, +15反 =00001111, +15补 =00001111, +15移 =10001111-20原 =10010100, -20反 =11101011, -20补 =11101100, -20移 =01101100-27/32原 =1.1101100, -27/32反 =1.0010011, -27/32补 =1.0010100,-27/32移 =0.0010100第 2 章 微型计算机系统的微处理器习 题2-10868088 CPU 的功能结构由哪两部分组成?它们的主要功能是什么?答:8086/8088 CPU 的功能结构由以下两部分组成:总线接口单元BIU(Bus Interface Unit),执行部件EU (Execution Unit)。总线接口单元BIU的主要功能是:负责与存储器、I/O 端口进行数据传送。具体讲:取指令:总线接口部件从内存中取出指令后送到指令队列。预取指令。配合EU执行指令,存取操作数和运算结果。执行部件 EU 主要功能是:负责指令执行。2-2086 CPU 指令部件(队列)的作用是什么?地址加法器的作用是什么?答:8086/8088的指令队列分别为6/4个字节,存储预取的指令。地址加法器用来产生20位物理地址。8086/8088可用20位地址寻址1M字节的内存空间,而CPU内部的寄存器都是16 位,因此需要由一个附加的机构来计算出20位的物理地址,这个机构就是20位的地址加法器。2-3据 8086 CPU 的结构,简述程序的执行过程。答:设程序的指令代码已存放在存贮器中。为执行程序,CPU按照时钟节拍,产生一系列控制信号,有规则地重复进行以下过程。(1)BIU从存贮器中取出一条指令存入指令队列。(2)EU从指令队列取指令并执行指令。BIU利用总线空闲时间,从内存取第二条指令或取第三条指令存入指令队列。(3)EU执行下一条指令。如果前面一条指令有写存贮器的要求,则通知BIU把前条指令结果写到存贮器中,然后再取指令存入指令队列。(4)如指令执行要求读取操作数,由BIU完成。(5)EU执行再下一条指令,返回(1)处继续执行上述操作过程。所以,程序的执行过程就是CPU取指令、分析指令、执行指令,再取指令这样一个循环重复过程。在指令执行过程中,利用 EU 分析指令操作码和执行指令时不占用总线操作时间的特点,BIU 自动地通过总线读取存贮器中的指令码存入 BIU 指令队列,从而使 BIU 与 EU 并行工作,提高 CPU 执行指令的速度。2-4什么是总线周期?80868088 的基本总线周期由几个时钟周期组成?若 CPU 的主时钟频率为 10 MHz,则一个时钟周期为多少?一个基本总线周期为多少?答:总线周期:BIU通过系统总线对存储器或IO端口进行一次读写操作的过程称为一个总线周期。80868088CPU的一个基本总线周期由4个时钟周期(T1T4)组成,也称4个T状态。-7若 CPU 的主时钟频率为 10MHz,则一个时钟周期为10 s,一个基本总线周期为 410-7 s。2-5复位信号 RESET 到来后,80868088 CPU 的内部状态有何特征?系统从何处开始执行指令?答:80868088 系统中,复位信号 RESET 到来后,处理器内部的各寄存器和标志寄存器的内容自动设置为:CS FFFFH DS 0000HSS 0000H ES 0000HIP 0000H 指令队列空FR 0000H (禁止中断)因 CSFFFFH,IP0000,所以 80868088 将从地址 FFFF0H 开始执行指令。2-6在总线周期的 T1T4 状态,CPU 分别执行什么操作?在 CPU 的读写总线周期中,数据在哪个状态出现在数据总线上?答:CPU 在每个时钟周期内完成若干个基本操作,具体是:T1 状态:CPU 向多路复用总线上发送地址信息指出要寻址的存储单元或外设端口地址。T2 状态:CPU 从总线上撤消地址,使总线的低 16 位置为高阻抗状态,为传输数据作准备。总线的高 4 位输出本总线周期状态信息。这些状态信息用来表示中断允许状态、当前正在使用的段寄存器等。T3 状态:CPU 在总线的高 4 位继续输出总线周期状态信号。在总线的低 16 位出现由CPU 写出的数据,或者从存储器或 IO 端口读入的数据。T4 状态:总线周期结束。在 CPU 的读写总线周期中,数据在 T3 状态出现在数据总线上。2-78086/8088 读/写总线周期,微处理器是在( B )时刻采样READY信号,以便决定是否插入Tw 。AT2 B.T3 C.T3 下降沿D. T2 上升沿2-88086/8088 系统中为什么要有地址锁存器?需要锁存哪些信息?答:因 8086/8088 系统中地址线、数据线是复用的,所以要有地址锁存器锁存 T1 状态输出的地址。8086 系统锁存 20 位地址及 BHE 信号, 8088 系统锁存 20 位地址。2-980868088 的最大模式系统配置与最小模式系统配置在结构上有何区别?总线控制器 8288 的作用是什么?答:最大模式系统配置在结构上与最小模式系统的主要区别是增加了一个总线控制器 8288和一个总线仲裁器 8289。总线控制器 8288 的作用是:对来自 80868088 CPU 的总线状态信号 S2 、 S1 、 S0 译码,与输入控制信号 AEN 、CEN 和 IOB 相互配合,产生总线命令信号和总线控制信号。2-10关于8086 最大工作模式的特点描述正确的是( D )。A.不需要总线控制器8288 B.适用于单一处理机系统C.由编程进行模式设定D. M/IO 引脚不可以直接引用2-1180868088有最小和最大模式两种工作模式,当( B )时为最小模式。A.MN/ MX=O B.MN/ MX=l B.INTR=l D.HOLD=12-128086 最小工作模式和最大工作模式的主要差别是( D ).A.地址总线的位数不同C数据总线位数不同B.I/O 端口数不同D.单处理器与多处理器的不同2-13PC 机中地址总线的作用是( C )。A.用于选择存储器单元B.用于选择进行信息传输的设备C.用于给存储器单元和I/O 设备接口电路的选择地址D.以上都不正确2-14设当前 SSC000H,SP2000H,AX2355H,BX2122H,CX8788H,则当前栈顶的物理地址是多少?若连续执行 PUSH AX,PUSH BX,POP CX 3 条指令后,堆栈内容发生什么变化?AX、BX、CX 中的内容是什么?2-158086/8088的控制标志位有( C )个。A.l B.2 C.3 D.42-16编程人员不能直接读写的寄存器是( C )。A.DI B.CX C.IP D.SP2-17设(AH)03H,(AL)82H,试指出将 AL 和 AH 中的内容相加和相减后,标志位 CF、AF、OF、SF、IF 和 PF 的状态。答:(AH)00000011H(AL)10000010H10000101CF=0、AF=0、OF=0、SF=1、IF 不确定和 PF0(AH)00000011H_ (AL)10000010H10000001CF=1、AF=0、OF=0、SF=1、IF 不确定和 PF12-188086 CPU 中的标志寄存器 FR 中有哪些状态标志和控制标志?这些标志位各有什么含义?见教材。2-19 BHE 信号的作用是什么?简述 8086 系统中,访问存储器在读写一个字和字节的过程中, BHE 和 A0 的状态。答:高 8 位数据总线允许状态复用信号。总线周期的 T1 状态,8086 在 BHE /S7 输出低电平,表示高 8 位数据总线 AD15AD8 上的数据有效。8086 系统中,BHE 和 AD0 结合起来,指出当前传送的数据在总线上将以何种格式出现。(见教材表 2-4-1)8088 系统中,由于数据总线只有 8 位,不存在高 8 位与低 8 位的问题。所以,该引脚(第 34 号)被定义为双功能引脚。在最大模式时,该引脚恒为高电平;在最小模式中,则定义为 SS0 。2-208086 向偶地址存储单元 0 送一个字节数据时, 须执行一个总线周期, 在第一个 T状态中, ALE 为1, A0 为0,WR 为 1。2-218086 系统中,为什么要对存储器进行分段管理?其分段管理是如何实现的?答:8086/ 8088 地址总线是 20 位的,CPU 中的寄存器是 16 位的,20 位地址无法用 16 位寄存器表示,所以必须分段。通常有代码段、数据段、堆栈段、辅助段。段内地址 16 位,每个段的大小最大可达 64KB;实际使用时可以根据需要来确定段大小。2-22已知某存储单元的段地址为 4500H,偏移地址为 4500H,该单元的物理地址是多少?答:49500H2-23某指令对应当前段寄存器CS=FFFFH,指令指针寄存器IP=FF00H,此时,该指令的物理地址为多少?指向这一物理地址的CS值和IP值是唯一的吗?试举例说明答:该指令的物理地址为:CSI PFFFF0H+ FF00H=1 0FEF0H这一物理地址的CS值和IP值是唯一的吗:不唯一2-24因为8086CPU 的字数据既可以存放在内存的偶地址单元,也可以安排在奇地址单元,所以其堆栈指针SP( A )。A最好是指向偶地址单元B可以指向任何地址单元C只能指向偶地址单元D只能指向奇地址单元第 3 章 8086/8088 的指令系统习 题3-1试举例说明 8086/8088 微处理器的各种寻址方式。(略)3-2假定 DS=1000H,SS=9000H,SI=100H,BX=20H,BP=300H,请指出下列指令的源操作数是什么寻址方式?若源操作数位于存储器中,其物理地址是多少?(1)MOV CX,1000H(3)MOV AX,BX(5)MOV AL,BP+5(2)MOV AX,100H(4)MOV BL,CL(6)MOV AL,BP+SI+2答:(1)中源操作数为直接寻址,其物理地址=DS*16+1000H=11000H;(2)中源操作数为立即寻址;(3)中源操作数为寄存器间接寻址,其物理地址=DS*16+(BX)=10020H;(4)中源操作数为寄存器寻址;(5)中源操作数为变址寻址,其物理地址=SS*16+(BP)+ 5=90305H;(6)中源操作数为基址加变址寻址,物理地址=SS*16+(BP)+(SI)+ 2=90402H。3-3在 8088/8086 微机的内存物理地址 34780H 处,存放有字节数据 58H,已知DS=3000H,试写指令序列将该字节数据送入 AL 寄存器。要求分别采用三种不同的寻址方式。答:(1) 直接寻址:MOV AL, 4780H(2) 寄存器间接寻址:MOV BX,4780HMOV AL, BX(3) 变址寻址:MOV SI, 4782HMOV AL, SI-23-4判断下述 8086/8088 指令的写法是否正确:(1)MOV AX, BH(3)MOV SP, AX(5)OUT 10H, CL(7)PUSH AL(9)MOV ES:SI, DI答:(1) MOV AX, BH(2) MOV BP, AX(3) MOV SP, AX(X)()(X)(2)MOV BP, AX(4)MOV DI, SI(6)INC WORD PTR SI(8)CMP 36H, AL(10)MOV BYTE PTR BX, 800(4) MOV DI, SI(5) OUT 10H, CL(X)(X)(6) INC WORD PTR SI ()(7) PUSH AL(8) CMP 36H, AL(9) MOV ES:SI, DI(X)(X)()(10) MOV BYTE PTR BX, 800 (X)3-5设有关寄存器及存储单元的内容如下:DS=2000H , BX=0100H , AX=1200H , SI=0002H , 20102H=33H , 20103=44H ,21200=9BH,21201H=99H,21202H=0AAH,21203H=88H。问:下列各条指令单独执行后相关寄存器或存储单元的内容为多少?(1)MOV(3)MOV(5)MOVAX,1800HBX,1200HBX+SI,AL(2)MOV(4)MOV(6)MOVAX,BXDX,BX+1100HAX,BX+SI+1100H答:(1)(2)(3)(4)(5)(6)AX=1800HAX=BX=0100HBX=999BHDX=999BH20102H = AL =00HAX=88AAH3-6已知 SS=0FF00H,SP=0000H,试编写程序片段将两个 16 位数 1122H 和 3344H 先后压入堆栈,并画出堆栈区和 SP 内容变化的过程示意图(标出存储单元的地址)。答:MOV AX, 1122HPUSH AX0FF00:0FFFEH0FF00:0FFFFH22H11HSPMOV AX, 3344HPUSH AX0FF00:0FFFCH0FF00:0FFFDH0FF00:0FFFEH0FF00:0FFFFH44H33H22H11HSP3-7设在数据段偏移地址为 2000H 单元开始的地方连续存放了 0 15 的平方值。试写出包含有 XLAT 指令的指令序列,用来查找 015 范围内的某个数 N 的平方值(设 N 的值存放在 CL 寄存器中)。答:MOV BX, 2000HMOV AL, CLXLAT3-8试用简单的几条指令完成对 AL 寄存器中的无符号数乘以 12 的操作。要求只能用移位、加法及 MOV 指令。答:MOV AH, 0MOV CL, 2SHL AX, CLMOV BX, AXSHL AX, 1ADD AX, BX;AL 左移两位,相当于乘 4;保存;AL 再左移一位,相当于原数乘 8;相当于原数乘 123-9已知程序段如下:MOV AX,1234HMOV CL,4ROL AX,CLDEC AXMOV CX,4MUL CX问:执行完每条指令后,AX=? CF=? SF=? ZF=?(设在执行第一条指令前 CF=SF=ZF=0)。答:AX=8D00HCF=0,SF 及 ZF 不确定。3-10执行如下三条指令后:MOV AH,0MOV AL,7ADD AL,5问:(1) 若再执行一条非组合 BCD 码加法调整指令 AAA 后,AX 的内容为多少? (2) 若题中的三条指令后紧跟的是一条组合 BCD 码加法调整指令 DAA,则执行完 DAA 后 AX 的内容为多少?答:(1) AX=0102H(2) AX=0012H3-11已知 AX=14C6H,BX=80DCH,问执行下列程序段后,程序转向何处?ADD AX,BXJNC L2SUB AX,BXJNC L3JMP L4若初始 AX=B568H,BX=54B7H,情况又如何?答:程序转向地址标号 L2 处。若初始 AX=B568H,BX=54B7H,程序转向地址标号 L4 处。3-12如下程序完成什么功能?MOV AX,5000HMOV DS,AXMOV CX,100MOV AX,0MOV SI,AXSTART:ADD AX,SI+1000HADD SI,2LOOP STARTMOV 200H,AX答:程 序 完 成 内 存 5000H:1000H 开 始 的 连 续 100 个 字 数 据 的 求 和 , 并 将 和 数 存 于5000H:200H 处。3-13、试写一程序片段,将当前数据段偏移地址为 2000H 开始的 100 个字节单元内容与偏移地址为 3000H 开始的 100 个字节单元内容相交换,即:偏移地址 2000H 对应单元内容与偏移地址 3000H 对应单元内容交换,偏移地址 2001H 对应单元内容与偏移地址 3001H对应单元内容交换,依此类推。答:MOV SI, 2000HMOV DI, 3000HMOV CX, 100REPT0: MOV AL, SIMOV BL, DIMOV DI, ALMOV SI, BLINC SIINC DILOOP REPT03-14在数据段中偏移地址分别为 1000H 及 2000H 开始的存储区内有两个 10 字节的字符串,试编写一段程序来比较这两个字符串。如果这两个字符串不同,则程序转至8000H:1000H 处,否则顺序执行。答:MOV SI,1000HMOV DI,2000HMOV CX,10CLD;装入源串偏移地址;装入目的串偏移地址;装入字符串长度;方向标志复位REPE CMPSBJCXZ CONTIJMP 8000H:1000HCONTI: NOP3-15利用串操作指令将数据段中偏移地址 1000H 开始处的 100 个字节移动到数据段偏移地址为 1050H 开始的地方。答:MOV CX,100MOV SI,1000H+99MOV DI,1050H+99STDREP MOVSB;地址减量方式传送;数据块传送(串操作)第 4 章 汇编语言程序设计习题4-1如下定义:VAR1 DB 4VAR2 DB 10CNST1 EQU 12试指出下列指令的错误原因:(1)MOV CNST1,CX(3)CMP VAR1,VAR2(2)MOV VAR1,AX(4)CNST1 EQU 24答:(1) 目的操作数不能是立即数;(2) VAR1 单元定义为字节类型,而 AX 为字;(3) 8086/8088 中两个内存单元不能直接比较;(4) 同一符号名不允许用 EQU 重复定义。4-2某人定义了如下数据段:DATA SEGMENT AT 1000HORG 100HVAL1 DB 11HVAL2 DW 22H, 33HVAL3 DB 5 DUP (44H)DATA ENDS试指明该数据段中偏移地址从 100H 到 109H 的各存贮单元的内容。答:100H: 11H101H: 22H102H: 00H103H: 33H104H: 00H105H: 44H106H: 44H107H: 44H108H: 44H109H: 44H4-3对于下面的数据定义,写出各条指令执行后的结果:DATA SEGMENTORG 0100HAAAA DW 0A244HBBBB DB 33H,66H,92H,29HCCCC EQU WORD PTR BBBBDDDD DB ABCDEEEE EQU $DDDDDATA ENDS答:(1) MOV AX,AAAA(2) MOV BX,CCCC(3) MOV DX,OFFSET DDDD(4) MOV CL,EEEEAL=(BH=(DL=(CL=()(1) MOV AX,AAAA AL=( 44H(2) MOV BX,CCCC BH=( 66H(3) MOV DX,OFFSET DDDD DL=( 06H )(4) MOV CL,EEEE CL=(04H)4-4试编程序将内存从 50000H 到 5FFFFH 的每个单元均写入数 55H,并再逐个单元读出比较,看写入的与读出的是否一致。若全对,则将 AL 置 0;只要有错,则将 AL 置 0FFH。答:START:LOOP1:MOV AX,5000HMOV DS,AXMOV SI,0MOV CX, 0FFFFHMOV BYTE PTR SI, 55HMOV AL, SICMP AL, 55HJNZ LOOPERRLOOP2: INC SILOOP LOOP1MOV BYTE PTR SI, 55H ;最后一个单元MOV AL, SICMP AL, 55HJNZ LOOPERRMOV AL, 0;全对JMP LOOPOUTLOOPERR: MOV AL, 0FFHLOOPOUT: NOP4-5编写一个子程序,对 AL 中的 ASCII 字符添加偶校验位(bit7),即:使 AL 中的“1”的个数为偶数。答:ADDPARITY PROC NEARAND AL, 7FHJP ADDEXITOR AL, 80HADDEXIT: RETADDPARITY ENDP4-6利用上题的子程序,编程对内存物理地址 10000H 开始的 1024 个单元的 ASCII 字符加上偶校验位。答:START:MOV AX,1000HMOV DS,AXMOV SI,0MOV CX, 1024LOOP1: MOV AL, SICALL ADDPARITYMOV SI, ALINC SILOOP LOOP14-7、试写一子程序,完成对一个 8 位无符号数乘 6 的操作。要求:(1)只能用传送、加法及移位指令;(2)入口参数(即 8 位无符号数)放于 AL 中,出口参数(即乘 6 后的结果)放于 AX。答:MULTI6 PROC NEARPUSH BXMOV AH, 0SHL AX, 1MOV BX, AXSHL AX, 1ADD AX, BX;乘 2;乘 4;乘 6POP BXRETMULTI6 ENDP4-8给定如下程序片段:START: MOV AX, 1000H,OV SS, AXOV SP, 000FHOV AX, 1000HUSH AXOV BX, 5439HUSH BXALL NEAR PTR SUBRTOP AXSTOP0: HLTSUBRT: PUSH BPOV BP, SPVAAX:MOV AX, BP+4DD AX, 456AHOV BP+4, AXOP BPET 4问:(1)程序执行到标号为 SUBRT 处的指令时,SP = ?(2)执行完标号为 VAAX 的MOV 指令后,AX =?(3)执行到标号为 STOP0 处的指令时:SP = ? AX = ? BX = ? CF=? SF=?OF=?答:() 程序执行完标号为 SUBRT 处的“PUSH BP”指令后,SP0006H() 执行完标号为 VAAX 的 MOV 指令后,AX =5439H() 程序执行到标号为 STOP0 处的指令时(实际执行“HLT”指令之前):SP = 000CHAX = 99A3HBX = 5439H以及以下标志寄存器的内容:CF = 0SF = 1OF = 14-9自符号地址为 MARK 开始的内存缓冲区中,存有 100 个学生的某门课的考试成绩。试找出成绩不低于 80 分以及成绩低于 60 分的学生个数,同时求出最高的成绩分及最低的成绩分数,并将它们分别存于符号地址为 PST、FST、MAXMK 及 MINMK 的四个单元中。要求写出完整的数据段及代码段。答:DATA SEGMENTMARK DB 100 DUP(?)PST DW 0FST DW 0MAXMK DB 0MINMK DB 100DATA ENDSCODESTART:AGAIN:HIGHL:MKCHK:HIGHMK:SEGMENTASSUME CS:CODE, DS:DATAMOV AX, DATAMOV DS, AXMOV CX, 100MOV BX, OFFSET MARKMOV AL, BXCMP AL, MAXMKJC HIGHLMOV MAXMK, AL ; update highest markCMP AL, MINMKJNC MKCHKMOV MINMK, AL ; update lowest markCMP AL, 60JNC HIGHMKINC FST ; increase the no. of students whose mark = 80CHKFH: INC BXLOOP AGAINMOV AX, 4C00HINT 21HCODE ENDSEND START4-10编写一段程序,接收从键盘输入的 10 个数(输入回车符后结束),然后将这些数按位取反后存于 BUFF 开始的缓冲区中。答:DATA SEGMENTBUFF DB 10 DUP (0);数据段;数据区DATA ENDSSTACK SEGMENT STACK STACK;堆栈段DB 100 DUP(?)STACK ENDSCODE SEGMENT;代码段ASSUME CS:CODE,DS:DATA,SS:STACKSTART:MOV AX,DATAMOV DS,AXMOV CX, 10LEA SI, BUFFREPT1: MOV AH, 1INT 21H;键入数据CMP AL, 0DH;判断是否是回车键JE NEXT1;是,转 NEXT1;否继续输入NOT ALMOV BUFF, ALDEC CXNEXT1: OR CX, CXJNZ REPT1MOV AX,4C00HINT 21HCODE ENDSEND START4-11试编程序完成两个一位十进制数的加法功能。具体步骤与要求如下:(1) 利用 DOS1 号功能调用,顺序从键盘输入被加数、“+”运算符及加数;(2) 完成相加功能;(3) 将相加的结果用 DOS 9 号功能调用在屏幕上显示出来。例如:输入 8+6 后,屏幕上应显示相加结果 14。如果在上述步骤(1)中有非法输入,应在屏幕上显示“Input error”,之后程序须重新从头开始(即从被加数的输入开始)。(略)4-12试定义一条能对任意寄存器进行左移指定位的宏指令。答:SHIFT MACRO REG, COUNTLOCAL LENDPUSH CXMOV CL, COUNTCMP CL, 1JC LEND ; for COUNT 1, do not shiftSHL REG, CLLEND: POP CXENDM4-13某人写了如下宏定义,以将某寄存器中的一位 16 进制数转化为相应的 ASCII 码。试分析该宏定义是否有错,若有,试指出错误之处及原因。HEXASC MACRO HEXREGPUSHFCMP HEXREG,10JL LS10ADD HEXREG,a-0- 10LS10:ADD HEXREG,0POPFRETHEXASC ENDP答:错误之处:开始处缺:LOCAL LS10应去除 “RET” 语句“HEXASC ENDP”应为 “ENDM”4-14在数据段偏移地址 BUFFER 开始处顺序存放了 100 个无符号 16 位数,现要求编写程序将这 100 个数据从大到小排序。(略)第 5 章 微型计算机总线习题5-1ISA 总线是属于_C_总线。A. 同步B. 异步C. 半同步D. 自适应5-2以下的接口芯片中,可以用作总线主设备的是_A_。A. DMA 控制器B. 中断控制器C. 计数器D. A/D 变换器5-3总线最大传输率等于_D_。A. 总线宽度乘以总线频率B. 总线宽度乘以总线频率的二分之一C. 总线宽度乘以总线频率的四分之一D. 总线宽度乘以总线频率的八分之一5-4总线宽度的意思是_B_。A. 总线插槽的尺寸B. 总线中数据线的数目C. 总线中所有信号线的数目D. 总线插槽所有引脚的数目5-58088CPU 在形成对外的数据总线和地址总线时要使用_B_。A. 三态地址锁存器和三态双向数据缓冲器B. 非三态地址锁存器和三态双向数据缓冲器C. 三态地址锁存器和非三态双向数据缓冲器D. 非三态地址锁存器和非三态双向数据缓冲器5-68088 在最大模式下使用 8288 总线控制器产生读写控制信号,8288 产生的读写信号有 6 条,在 PC 总线中使用的读写控制线是_C_。A. 6 条B. 5 条C. 4 条D. 2 条5-7PC 总线标准中不包括_C_。A. DMA 请求和应答线B. 硬中断请求线C. 和 CPU 连接的中断请求和应答线D. 复位线5-8PCI 总线是一种_D_总线。A. 8 位/16 位C. 16 位/32 位5-9ISA 总线是一种_A_总线。A. 8 位/16 位C. 16 位/32 位B. 8 位/16 位D. 32 位/64 位B. 8 位/16 位D. 32 位/64 位5-10以下的说法中,不是同步总线特点的是_C_。A. 不需要应答信号B. 总线周期的长度一般较短C. 总线周期的长短可以变化D. 总线上各部件的工作速度比较接近5-11什么是总线,微型计算机为什么要采用总线结构?答:总线是在计算机系统中,CPU 和其他模块,模块和模块之间传输某种信息的公共通道。采用总线结构,便于微型计算机设计和生产的标准化和模块化,降低了生产和使用的成本,对于微型计算机的推广使用具有非常重要的价值。5-12总线操作有什么限制?这些限制对于微型计算机的性能有什么影响?答:总线上同时只能传输一种信号。所以,不允许同时有几个部件互相传输信息。不同部件之间的传输只能分时进行。这种总线传输的分时性限制了微型计算机操作的并发性。5-13ISA 总线是一种同步总线还是半同步总线?答:是一种半同步总线。5-14ISA 总线通过什么信号可以调整总线周期的长短?答:I/O CH RDY。如果此信号线的输入是低电平,要求 CPU 延长总线周期。5-15PCI 总线是不是可以接入多个主设备?在接入多个主设备时,PCI 总线是什么类型的总线?答:PCI 总线可以接入多个主设备。PCI 总线本来是属于半同步总线,可以通过 TRDY#和 IRDY#来控制插入等待周期。在引入多个主设备时,需要通过 REQ 和 GNT 信号来进行请求和应答的联络,但是,并不会因此而改变总线的类型位异步总线。总线的类型仍然是半同步总线。5-16现在实际的微型计算机是多总线系统还是单总线系统?微型计算机采用多总线系统有什么优点?答:现在的微机系统都是多总线系统。多总线系统可以根据不同的速度需要,在系统的不同地方使用不同速度的总线。使得系统的配置具有更多的灵活性。由于不需要所有的总线都使用同样高速的性能,也可以降低系统的成本。5-17一个 USB 系统包括几种硬设备,分别在系统中起什么作用?答:一个 USB 系统包含三类硬件设备:USB 主机(USB Host)、 USB 设备(USB Device)、USB集线器(USB Hub)USB 主机有以下功能:检测 USB 设备的加入和退出;管理主机和 USB 设备间的通信;读取和分析设备的配置信息,对 USB 设备进行配置操作;对总线上的错误进行管理和恢复;为加入的 USB 设备提供电源。USB Hub 就是 USB 集线器。USB 集线器用于设备扩展连接,通过 USB 集线器可以连接更多的 USB 设备。USB 设备就是使用 USB 总线标准的外部设备。5-18为什么 USB 总线很快的得到了普及和应用?答:传输速度快,可以满足一般的需要;即插即用,使用方便;成本较低,易于接受。第 6 章 半导体存储器习题6-1半导体存储器分为哪两大类?随机存取存储器由哪几个部分组成?答:由随机存取存储器()和只读存储器(ROM);由地址寄存器、译码驱动电路、存储体、读写驱动电路、数据寄存器和控制逻辑部分组成。6-2简述 ROM、PROM、EPROM、EEPROM 在功能上各有何特点。答:a)b)c)d)ROM 是只读存储器,使用时只能读出,不能写入,适用于保存不需要更改而经常读取的数据,通常使用的的光盘就是这类存储器;PROM 属于一次可编程的 ROM,通常使用时也只能读出,不能写入,通常使用的刻录光盘就属于此类存储器。最初从工厂中制作完成的 PROM 内部并没有资料,用户可以用专用的编程器将自己的资料写入,但是这种机会只有一次,一旦写入后也无法修改,若是出了错误,已写入的芯片只能报废;EPROM 属于可擦除,但是用户需要使用专用的紫外线擦除器对其进行数据擦除,并使用专用的编程器对其重新写入数据;EEPROM 是电可擦写 ROM,可以用专用的编程器对其进行擦写。6-3存储器的地址译码有几种方式?各自的特点是什么?答:地址译码有三种方式:线选法、全译码法和部分译码法。e)f)g)线选法:使用地址总线的高位地址作为片选信号,低位地址实现片内寻址;优点是结构简单,需要的硬件电路少,缺点是地址不连续,使用中不方便,而且同一存储区的地址不唯一,造成地址空间浪费;全译码法:将地址总线中除片内地址以外的全部高位地址都接到译码器的输入端参与译码。特点是每个存储单元的地址是唯一的,地址利用充分,缺点是译码电路复杂;部分译码:将高位地址的部分地址线接到译码器参与译码,产生存储器的片选信号。特点是各芯片的地址是连续的,但是地址不唯一,仍然存在地址的堆叠区。6-4某 RAM 芯片的存储容量为 10248 位,该芯片的外部引脚最少应有几条?其中几条地址线?几条数据线?若已知某 RAM 芯片引脚中有 13 条地址线,8 条数据线,那么该芯片的存储容量是多少?答:至少 23 根,其中有 10 根地址线,8 条数据线;存储容量是 213*8bit=64Kbit=8KB。6-5用 Intel 2114 1K4 位的 RAM 芯片组成 32K8 位的存储器,需要多少块这样的芯片?答:需要 64 片。6-6设某微型机的内存 RAM 区的容量为 128KB,若用 2164 芯片构成这样的存储器,需多少片 2164?至少需多少根地址线?其中多少根用于片内寻址?多少根用于片选译码?答:需要 16 片;至少地址线需要 17 根,其中 1 条用于片选,16 条用于片内寻址。6-7某 8088 系统用 2764 ROM 芯片和 6264 SRAM 芯片构成 16KB 的内存。其中,ROM的地址范围为 0FE000H 0FFFFFH, RAM 的地址范围为 0F000H 0F1FFFH。试利用74LS138 译码,画出存储器与 CPU 的连接图,并标出总线信号名称。答:6-8什么是 Cache?简述其工作原理?若主存 DRAM 的的存取周期为 70ns,Cache 的存取周期为 5ns,命中率为 85%,则它们构成的存储器的平均存取周期是多少?答:Cache 位于主存和 CPU 之间,有 SRAM 组成,用来协调 CPU 和主存之间的数据传输速度;Cache 的工作原理是基于程序访问的局部性,即在单位时间内对局部范围的存储器地址 频 繁 访 问 , 而 对 此 范 围 以 外 的 地 址 则 访 问 甚 少 ; 平 均 存 储 周 期=5ns*85%+70ns*15%=14.75ns。6-9什么是虚拟存储器?它的作用是什么?答:虚拟存储器又称虚拟内存,是指在内存不足的情况下,利用外部存取器的一部分空间模拟内存,使软件可以将其当成一般的内存使用,从使用角度来看,除了速度较慢外,其他方面与内存相比并无明显区别;虚拟存储器圆满解决了计算机存储系统对存储容量、单位成本和存取速度的苛刻要求,取得了三者之间的最佳平衡。第 7 章 微型计算机和外设间的数据传输习题7-1 什 么 是 接 口 ? 什 么 是 端 口 ? 什 么 情 况 下 两 个 端 口 可 以 共 用 一 个 地 址 ? 在8086/8088 微机系统中,CPU 是如何实现端口寻址的?答:把外部设备与计算机连接起来,实现数据传送的控制电路称为 I/O 接口电路;为了存放接口的数据、状态和控制信息,I/O 接口电路拥有几个不同地址的寄存器,每个寄存器称为一个端口;若状态与控制端口的位长和不超过 8,则可以共用一个端口;808X 系列
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 解决方案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!