计算机原理及应用习题(16章)_第1页
计算机原理及应用习题(16章)_第2页
计算机原理及应用习题(16章)_第3页
计算机原理及应用习题(16章)_第4页
计算机原理及应用习题(16章)_第5页
已阅读5页,还剩11页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、如有帮助欢迎下载支持第1章微机系统导论1.2微处理器、微型计算机和微型计算机系统之间有何联系与区别?答:微处理器是微型计算机的中央处理器,微型计算机是微型计算机系统硬件部分的核心部件。微处理器是指由一片或几片大规模集成电路组成的具有运算器和控制器功能的中央处 理器部件。微型计算机又称主机, 是指以微处理器为核心,配上存储器、输入/输出接口电路及系统总线所组成的计算机。微型计算机系统是指以微型计算机为中心,配以相应的外围设备(如硬盘、显示器、键盘、鼠标等)、电源和辅助电路(统称硬件)以及指挥微型计算机工作的软件系统(如系统 软件、应用软件)所构成的系统。1.3 一个基本的微机硬件系统的组成部分包

2、括哪几部分?实际微机硬件系统一般都由哪些部件组成?答:一个基本的微机硬件系统的组成包括微处理器芯片、存储器芯片与输入输出接口芯片。微处理器芯片是微机的运算和控制中心,存储器芯片(内存)用来存储程序和数据,输入输出接口芯片是微机与外设之间的接口。主流微机硬件系统一般由主机(包括CPU、主存储器RAM、CPU外围芯片组和总线插槽)、外设接口卡、外部设备(如显示器、键盘、鼠标)及电源等部件组成。1.6 一个最基本的微处理器由哪几部分组成?它们各自的主要功能是什么? 答:一个最基本的微处理器由运算器、控制器和内部寄存器阵列3个部分组成。运算器又称为算术逻辑单元(ALU ),用来进行算术或逻辑运算以及位

3、移循环等操作;控制器包括指令寄存器(IR )、指令译码器(ID )、可编程逻辑阵列(PLA ),三者共同作用 完成取指控制、执指控制等操作;内部寄存器的数量和类型视具体的微处理器类型而定,一般包括累加器、数据寄存器、程序计数器、地址寄存器和标志寄存器等,用以存放对应的数 据,供控制器和运算器使用。1.7试说明程序计数器 PC在程序执行过程中的具体作用与功能特点。答:PC中存放着正待取出的指令的地址。根据PC中的指令地址,CPU准备从存储器中取出将要执行的指令。通常程序按顺序逐条执行。任何时刻PC都指示要取的下一个字节或下一条指令(对单字节指令而言)所在的地址。因此,PC具有自动加1功能。1.8

4、试说明标志寄存器 F的基本功能是什么?它在程序执行过程中有何作用? 答:标志寄存器F用来寄存CPU执行指令时所产生的结果或状态的标志信号。如进行算术 或逻辑运算时是否产生进位、半进位、溢出、结果等于零、奇偶性等状态的变化,通常需要 将标志寄存器中这些运算后的结果或状态作为一种条件,用于判断程序是否转移。不同型号的微处理器对应的标志位的具体设置与功能也不同。1.9存储器的基本功能是什么?程序和数据是以何种代码形式来存储信息的? 答:存储器是计算机的存储和记忆部件,用来存放数据(包括原始数据、中间结果与最终结果)和程序。程序和数据在计算机内部都是用0、1二进制代码的形式来表示的,每一个0或1就叫做

5、1位信息。1.10 试说明位、字节、字长的基本概念及三者之间的关系。答:位(bit)是用0或1表示的一个二进制信息最基本单位;字节( Byte)是由8位二进制 代码表示的一个叫做位组的基本信息单位;字( Word)是指由2个字节组成的16位信息单 位。字长是指计算机内部 CPU 一次可以处理二进制数字的位数,它通常是字节的整数倍。第2章微机运算基础2.2在进位记数制中,“基数”和“位权(或权)”的含义是什么? 一个以 b为基数的任意 进制数N,它按位权展开式求值的一般通式是如何描述的?答:基数就是表示该进位制所用字符或数码的个数;数制每一位所具有的值称为位权或简称权。数N的按位权展开式的一般通

6、式为-mN -ki bii 1式中,ki为第i位的数码;b为基数;b为第i位的权;n为整数的总位数;m为小数的总位 数。2.3将下列十进制数分别转换为二进制数。(1) 147(2) 4095(3) 0.625(4) 0.15625答: 方法1:整数部分:除2取余;小数部分:乘2取整方法2:用特殊数字7410(1) 147 = 128+16+2+1 = 2 +2 +2 +2 = 1001 0011B12 0(2) 4095 = 4096-1 = 2-20 = 1111 1111 1111B-1-3(3) 0.625 = 0.5+0.125 = 2 +2 = 0.101B 0.15625 = 0.

7、00101B2.4将下列二进制数分别转换为BCD数。(1) 1011(2) 0.01(3) 10101.101(4) 11011.001答:方法:先转换为十进制数,再转换为BCD数(1) 1011B = 11D = 0001 0001BCD(2) 0.01B = 0.25D = 0.0010 0101BCD(3) 10101.101B = 21.625D = 0010 0001.0110 0010 0101BCD(4) 11011.001B = 27.125D = 0010 0111.0001 0010 0101BCD2.5将下列二进制数分别转换为八进制数、十六进制数。(1) 10101011

8、B(2) 1011110011B(3) 0.01101011B(4) 11101010.0011B答: 方法:二进制数转换为八进制数:3位变1位;二进制数转换为十六进制数:4位变1位。(1) 10101011B = 253Q = 0ABH(2) 1011110011B = 1363Q = 2F3H(3) 0.01101011B = 0.326Q = 0.6BH(4) 11101010.0011B = 352.14Q = 0EA.3H2.6选取字长n为8位和16位两种情况,求下列十进制数的原码。(1) X = +63(2) Y = -63(3) Z = +118(4) W = -118答:方法:

9、最高位(D7或D15)为符号位,其余位是数值部分的二进制形式。(1) 8 位:X 原=0011 1111B,16 位:X 原=0000 0000 0011 1111B(2) 8 位: Y 原 =1011 1111B,16位: Y 原1000 0000 0011 1111B(3) 8 位: Z 原= 0111 0110B,16位: Z 原0000 0000 0111 0110B(4) 8 位: W 原= 1111 0110B,16位: W 原= 1000 0000 0111 0110Bn为8位和16位两种情况,求下列十进制数的补码。2.7 选取字长(1) X = +65 (2) Y = -65(

10、3) Z = +127(4) W = -128答:方法:最高位(D7或D15)为符号位,若为正数,则其余位是数值部分的二进制形式;若为负数,则其余位是数值部分的二进制形式按位取反后末位加1。(1) 8 位: X 补= 0100 0001B ,16位:(2) 8 位: Y 补=1011 1111B,16位:(3) 8 位: Z 补= 0111 1111B,16位:(4) 8 位: W 补= 1000 0000B ,16位: X 补= 0000 0000 0100 0001B Y 补 = 1111 1111 1011 1111B Z 补 = 0000 0000 0111 1111B W 补 = 1

11、111 1111 1000 0000B2.8 已知数的补码表示形式如下,分别求出数的真值与原码。(1) X 补 = 78H(2) Y 补 = 87H(3) Z 补 = FFFH(4) W 补= 800H答:正数的原码与补码相同, 负数的原码是补码的符号位不变, 其余位按位取反后末位加1。(1) X 原=0111 1000B = 78H ,X = 7 氷6+8 = 120(2) Y 原 = 1111 1001B =0F9H,Y = -(7 16+9) = -121(3) Z 原 = 0000 1111 1111 1111B = 0FFFH, Z = 4095(4) W 原 = 0000 1000

12、 0000 0000B = 0800H , W = 2048 2.12设X=87H , Y=78H,在下述两种情况下比较两数的大小。(1) 均为无符号数(2) 均为带符号数(设均为补码)答: (1) 若均为无符号数,则 X Y(2) 若均为带符号数,则最高位(符号位)为 1 的数为负数,最高位(符号位)为 0 的数为正数数,所以 X Y(1) X 原 = 01010101(3) Z 原 = 11111111 答:正数的补码与原码相同,(2) Y 原 = 10101010(4) W 原 = 10000001负数的补码是原码的符号位不变,其余位按位取反后末位加 1 。(1) X 补 = 01010

13、101B(3) Z 补 = 10000001B(2) Y 补 = 11010110B(4) W 补 = 11111111B2.13选取字长n为8位,已知数的原码表示如下,求出其补码。162.15 阐述微型计算机在算术运算时,所产生的“进位”与“溢出”二者之间的区别。答:溢出是指带符号数的补码运算溢出,溢出及其判断方法:OF = D7C D6C。进位是指运算结果的最高位向更高位的进位D 7C 。进位和溢出是两个不同性质的概念,不能混淆,两者没有必然的联系。2.16 选字长 n 为 8 位,用补码列出竖式计算下列各式,并且回答是否有溢出。若有溢出, 则是正溢出还是负溢出?1) 0111 10010

14、111 00003) 0111 1100 0111 11112) 0111 1001 0111 00014) 0101 00010111 0001答:正溢出(2)负溢出(3)无溢出(4)无溢出第3章 8086/8088微处理器及其系统3.2 8086 CPU有多少根数据线和地址线?它能寻址多少内存地址单元和I/O端口? 8088CPU有多少根数据线和地址线?为什么要设计 8088 CPU ?答:8086 CPU有16根数据线和20根地址线,可以寻址 1MB的内存地址单元和 64KB 的I/O端口。8088 CPU有16根数据线和20根地址线,但是 8088的BIU通过总线控制电路与外部 交换数

15、据的总线宽度是 8位,总线控制电路与专用寄存器之间的数据总线宽度也是8位。设计8088 CPU的目的是为了与Intel原有的8位外围接口芯片直接兼容。3.6逻辑地址和物理地址有何区别?为什么8086微处理器要引入“段加偏移”的技术思想?段加偏移的基本含义又是什么?试举例说明。答:逻辑地址是指未定位之前在程序和指令中表示的一种地址,它包括两部分:段地址和偏移地址;物理地址又称为实际地址,它是指CPU对存储器进行访问时实际寻址所使用的地址。对8086 CPU而言,逻辑地址为 16位,物理地址为 20位,一个物理地址可对应多 个逻辑地址。“段加偏移”寻址机制允许重定位,极大地保证了系统兼容性。CPU

16、在处理数据时寻址的是 20位的物理地址,限于 8086/8088微处理器内部寄存器都 是16位的,所以微处理器的地址加法器会自动地把16位段寄存器中的16位段地址左移4位,形成20位的段基址(段起始地址),然后同16位的偏移地址相加, 才能形成20位的物 理地址。这种方法称为段加偏移。例如,若段地址为 1123H,偏移地址为15H,将1123H左移4位,即11230H,则物理 地址为 PA = 11230H + 15H = 11245H。3.14 IP寄存器的用途是什么?它提供的是什么信息?答:IP是指令指针寄存器,在程序正常运行过程中,它用来存放BIU要取的下一条指令的偏移地址。IP在程序运

17、行中能自动进行加1修正,使之总是指向要执行的下一条指令(字节)。IP与代码段寄存器 CS组合构成指令的物理地址,以实现对代码段指令的自动跟 踪。有些指令(调用子程序、中断等)能改变 IP值或把IP值压入堆栈暂时保存,或者由堆 栈弹出到IP以恢复指令指针的原值。3.20微处理器在什么情况下才执行总线周期? 一个基本的总线周期由几个状态组成?在什 么情况下需要插入等待状态?答:当微处理器需要对存储器或I/O端口进行取指令或传送数据时,都需要它的总线接口单元BIU执行一个总线周期。一个基本的总线周期由 4个状态组成:T1T4。当存储器或外设的速度较慢,不能及时地跟上CPU的速度时,存储器或外设就会通

18、过“READY ”信号线在T3状态启动之前向CPU发一“数据未准备好”信号,这样,CPU会在T3之后自动插入一个或多个等待状态Tw,以等待存储器或外设准备好要传送的数据。3.30什么是寻址方式? 8086/8088微处理器有哪几种主要的寻址方式?答:寻址方式是指 CPU根据指令功能所规定的操作码如何自动寻找相应的操作数或操 作数所在地址的方式。8086/8088的操作数可位于寄存器、存储器或I/O端口中,CPU对其进行操作时就会涉及操作数的寻址方式。8086/8088微处理器的主要寻址方式有:固定寻址、立即数寻址、寄存器寻址、存储器寻址等,其中存储器寻址又可分为:直接寻址和间接寻址,间接寻址又

19、可分为:(相对)基址寻址、(相对)变址寻址、(相对)基址加变址寻址。3.31试写出寻址存储器操作数时计算有效地址EA的通式。EA =基址值|BX 1 +变址值bp 一|SI 1 +位移量DISP0 8位16位一3.32指出8086/8088下列指令源操作数的寻址方式。(1)MOVAX, 1200H;立即数寻址(2)MOVBX, 1200H;直接寻址(3)MOVBX, SI;变址寻址(4)MOVBX, SI+1200H;相对变址寻址(5)MOVBX+SI, AL;寄存器寻址(6)ADDAX, BX+DI+20H;相对基址加变址寻址(7)MULBL;寄存器寻址(8)JMPBX;基址寻址(寄存器间接

20、寻址)(9)IN AL, DX;间接端口寻址(10)INCWORD PTRBP+50H;相对基址寻址3.33指出8086/8088下列指令中存储器操作数物理地址的计算表达式。(1)MOVAL, DI;PA =DS X 10H + DI(2)MOVAX, BX+SI;PA =DS X 10H + BX + SI(3)MOVAL, 8BX+DI;PA =DS X 10H + BX + DI + 8(4)ADDAL, ES: BX;PA =ES X 10H + BX(5)SUBAX, 2400H;PA =DS X 10H + 2400H(6)ADCAX, BX+DI+1200H;PA =DS X 1

21、0H + BX + DI + 1200H(7)MOVCX, BP+SI;PA =SSX 10H + BP + SI(8)INC BYTE PTRDI;PA = DS X 10H + DI3.34指出8086/8088卜列指令的错误何在?(1)MOVSI, IP(2)MOVCS, AX(3)MOVBL, SI+2(4)MOV60H, AL(5)PUSH2400H(6)INCBX(7)MUL-60H(8)ADD2400H, 2AH(9)MOVBX, DI(10)MOVSI, AL(1 )指令指针IP不能传送。(2)CS段寄存器不能做操作数。(3) 传送类型不匹配, BL为8位,SI+2为16位。4

22、)目的操作数不能为立即数。5)PUSH 指令中操作数不能为立即数。6)应在指令前加伪指令 BYTE PTR 或 WORD PTR 表明是对字节进行加 1 操作还是对字 进行加 1 操作。7)乘数不能为立即数。(8) 2400H前应加伪指令 BYTE PTR 或 WORD PTR进行类型说明。9)两个操作数不能同为存储器操作数。10)类型不匹配, SI 为 16位寄存器,而 AL 为 8位寄存器。3.36 阅读下列程序段,指出每条指令执行后有关寄存器的内容是多少?MOVAX, 0ABCH;AX 0ABCHDECAX;AX 0ABBHANDAX, 00FFH;AX 00BBH (高 8 位屏蔽)M

23、OVCL, 4; CL 4SAL AL, 1; AL 76HMOVCL, AL; CL 76HADDCL, 78H; CL 0EEHPUSHAX; AX 0076HPOP BX; BX 0076H3.37 指出 RET 和 IRET 两条指令的区别,并说明各用在什么场合?(1)RET 和 IRET 是两条返回主程序的指令,但 RET 是与过程(子程序)调用指令 CALL 对应使用的过程返回指令,而 IRET 是与中断指令 INT n 对应使用的中断返回指令。(2)RET 指令应安排在子程序的出口,即子程序的最后一条指令处,它的功能是从堆栈顶部弹出由CALL指令压入的断点地址值 IP或CS、IP

24、,迫使CPU返回到调用程序的断 点去继续执行。(3)IRET 指令总是安排在中断服务程序的出口处,由它控制从堆栈中弹出程序断点送回CS和IP中,弹出标志寄存器内容送回F中,迫使CPU返回到断点继续执行后续程序。3.38 说明 MOV BX, DA TA 和 MOV BX, OFFSTE DA TA 指令之间的区别。答: MOV BX, DATA 是直接将 DATA 的值赋给 BX 寄存器;MOV BX, OFFSTE DATA 是将 DATA 在段内的偏移量赋给 BX 寄存器。(注: DATA 为变量名,它指内存中的一个数据区的名字,它可以作为指令中的存储器操作 数来使用。变量仅对应于数据区中

25、的第一个数据项,若需对数据区中其它数据项进行操作, 必须用地址表达式指出哪个数据项是指令中的操作数。 )3.39 给定 DS=1100H , BX=0200H , LIST=0250H , SI=0500H 。试确定下面各条指令寻址 存储器的地址。1)MOVLISTSI, DX2)MOVCL, LISTBX+SI3)MOVCH, BX+SI4)MOVDL, BX+100H答:;相对变址寻址;相对基址加变址寻址;基址加变址寻址;相对基址寻址(1) PA = DS X 10H + SI + LIST = 11000H + 0500H + 0250H = 11750H(2) PA = DS X 10

26、H + BX + SI + LIST= 11000H + 0200 + 0500H + 0250H = 11950H(3) PA = DSX10H + BX + SI = 11000H + 0200H + 0500H = 11700H(4) PA = DSX10H + BX + 100H = 11000H + 0200H + 100H = 11300H3.40 假定 PC 机存储器低地址区有关单元的内容如下:(20H)=3CH ,(21H)=00H,(22H)=86H,(23H)=0EH 且 CS=2000H,IP=0010H,SS=1000H,SP=0100H,FLAGS=0240H ,这时

27、若执行 INT 8 指令,试问:(1) 程序转向从何处执行(用物理地址回答)?(2) 栈顶 6 个存储单元的地址(用逻辑地址回答)及内容分别是什么?答: (1) CS = 0E86H ,IP = 003CHPA = CSX10H + IP = 0E860H + 003CH = 0E89CH(2) 1000H: 00FAH10H(12H)1000H: 00FBH00H1000H: 00FCH00H1000H: 00FDH20H1000H: 00FEH40H1000H: 00FFH02H3.41 设 SP=2000H,AX=3000H ,BX=5000H ,执行下列片段程序后, 问 SP=? AX

28、=? BX=?PUSHAX;SP JSP2 =1FFEH,AX=3000HPUSHBX;SP JSP2 =1FFCH ,BX=5000HPOPAX;SP JSP + 2= 1FFEH ,AX=5000H答: SP = 1FFEH, AX = 5000H , BX = 5000H3.43 若 AX=5555H , BX=FF00H ,试问在下列程序段执行后, AX=? BX=? CF=?ANDAX, BX; AX = 5500,BX = FF00HXORAX, AX; AX = 0000HNOT BX; BX = 00FFH答: AX = 0000H , BX = 00FFH由于 AND 、OR

29、、XOR 指令的运算结果使 CF=0,NOT 指令的运算结果不影响 CF 位,所以 CF = 0 。3.44答:若 CS=E000H ,说明代码段可寻址物理存储地址空间的范围。 首地址为: CSX 10H + 0000H = E0000H末地址为: CSX 10H + FFFFH = EFFFFH故代码段可寻址物理存储地址空间的范围为 E0000H EFFFFH ,共 64KB 。3.45若 DS=3000H , BX=2000H , SI=0100H , ES=4000H,计算出下述各条指令中存储器操 作数的物理地址。(1) MOV BX, AH(2) ADD AL, BX+SI+1000H

30、(3) MOV AL, BX+SI(4) SUB AL, ES: BX答:(1) PA = DSX10H + BX = 30000H + 2000H = 32000H(2) PA = DSX10H + BX + SI + 1000H= 30000H + 2000H + 0100H + 1000H = 33100H PA = DS X 10H + BX + SI = 30000H + 2000H + 0100H = 32100H(4) PA = ESX 10H + BX = 40000H + 2000H = 42000H3.46 试比较 SUB AL, 09H 与 CMP AL, 09H 这两条

31、指令的异同,若 AL=08H ,分别执行 上述两条指令后, SF=? CF=? OF=? ZF=?答: SUB AL, 09H; AL AL - 09H结果返回 AL 寄存器,且根据结果置标志位。CMP AL, 09H; AL - 09H只根据结果置标志位,结果不返回 AL 寄存器。执行 SUB AL, 09H 指令后, AL=FFH , SF=1, CF=1 , OF=0, ZF=0;执行 CMP AL, 09H 指令后, AL=08H , SF=1, CF=1 , OF=0, ZF=0。3.47选用最少的指令,实现下述要求的功能。(1)AH 的高 4 位清零;(2)AL 的高 4 位取反;

32、(3)AL 的高 4 位移到低 4 位,高 4 位清零。(4)AH 的低 4 位移到高 4位,低 4位清零。答:(1)ANDAH, 0FH(2)XORAL, 0F0H(3)MOVCL, 4SHR AL, CL(4) MOV CL, 4SHL AH, CL3.48 设 BX=6D16H ,AX=1100H ,写出下列指令执行后 BX 寄存器的内容。 MOVCL, 06HROLAX, CLSHR BX, CL答: AX = 1100H = 0001 0001 0000 0000B循环左移 6 位后: AX = 0100 0000 00 00 0100B = 4004HBX = 6D16H = 01

33、10 1101 0001 0110B 逻辑右移 6位后: BX = 0000 0001 1011 0100B = 01B4H设初值 AX=0119H ,执行下列程序段后AX=?MOVCH, AH; CH01HADDAL, AH; AL1AHDAA; AL20H,CF = 0XCHGAL, CH; AL01H ,CH 20HADCAL, 34H; AL35HDAA; AL35HMOVAH, AL; AH35HMOVAL, CH; AL20H3.49HLT答:AX = 3520H3.50 设初值 AX=6264H ,CX=0004H ,在执行下列程序段后 AX=?ANDAX, AXJZDONESH

34、LCX, 1RORAX, CLDONE:ORAX, 1234H答:AX=7676H3.51写出可使 AX清零的几条指令。答:MOVAX, 0SUBAX, AXANDAX, 0000HXORAX, AX将 DH 中的最左设计一个程序段,中。;AX 6264H;AX=O,则转;AX丰0,顺序执行; CX 0008H; AX 6462H; AX 7676H3.713 位清 0,而不改变 DH 中的其它位, 结果存入 BH答:ANDMOV3.73 设计一个程序段,DH, 1FHBH, DH将 DI 中的最右 5 位置 1,而不改变 DI 中的其它位, 结果存入 SI 中。答: OR DI , 001F

35、HMOV SI, DI3.74 设计一个程序段,将 AX 中的最右 4 位置 1,将 AX 中的最左 3 位清 0,并且把 AX 中的 7、8、9 位取反。答:OR AL, 0FHANDAH, 1FHXORAX, 0380H3.75 选择正确的指令以实现下列任务。(1)把 DI 右移 3 位,再把 0 移入最高位。(2)把 AL 中的所有位左移 1位,使 0移入最低位。(3)AL 循环左移 3 位。(4)DX 带进位位循环右移 1 位。答: (1) MOV CL, 3SHRDI, CL(2)SALAL, 1(3)MOVCL, 3ROL AL, CL(4) RCR DX, 13.82 在执行中断

36、返回指令IRET 和过程(子程序)返回指令RET 时,具体操作内容有什么区别?答:执行中断返回指令IRET指令时,具体操作内容为:(1) 先将由SP所指定的堆栈内容弹出至IP,恢复IP值:IP J (SP), SP J SP+2(2) 再将由SP所指定的堆栈内容弹出至 CS,恢复CS值:CS J (SP),SP J SP+2(3) 最后将由SP所指定的堆栈内容弹出至标志寄存器FLAGS,恢复标志寄存器的值:FLAGS J (SP),SP J SP+2执行过程(子程序)返回指令RET时,具体操作步骤同(1)、( 2)步的内容,但没有第(3)步。第4章 8086/8088汇编语言程序设计4.2下列

37、程序段执行后,寄存器 AX、BX、和CX的内容分别是多少?ORG0202HDA_WORDDW 20HMOVAX, DA_WORD;AX =0020HMOVBX, OFFSET DA_WORD;BX =0202HMOVCL, BYTE PTRDA_WORD;CL :=20HMOVCH, TYPEDA_WORD;CH=2答:程序段执行后,AX=0020H ,BX=0202H ,CX=0220H。4.7写出下列逻辑地址的段地址,偏移地址和物理地址。(1) 4312H: 0B74H(2) 10ADH: 0DE98H(3) 8314H: 0FF64H(4) 78BCH: 0FD42H答:(1 )段地址:

38、4312H,偏移地址:0B74H物理地址:PA = 4312H X 10H + 0B74H = 43C94H(2) 段地址:10ADH,偏移地址:0DE98H物理地址:PA = 10ADH X 10H + 0DE98H = 1E968H(3) 段地址:8314H , 偏移地址:0FF64H物理地址:PA = 8314H X 10H + 0FF64H = 83204H(4) 段地址:78BCH,偏移地址:0FD42H物理地址:PA = 78BCH X 10H + 0FD42H = 88902HDATASEGMENTDB1 DB12H, 34H, 0, 56HDW1DW78H, 90H, 0AB4

39、6HADR1DWDB1ADR2DWDW1AAADW$-DB14.8某程序设置的数据区如下所示。,1234HDUF DB 5 DUP(O)DATA ENDS画出该数据段内容在内存中的存放形式(要求用十六进制补码表示,按字节组织) 答:0DB112H12ADR100H134H1300H200H14ADR204H356H1500H4DW178H16AAA10H500H1700H690H18BUF00H700H1900H846H2000H90ABH2100H1034H2200H1112H4.9 假设BX=54A3H,变量VALUE中存放的内容为 68H,确定下列各条指令单独执行后BX=?(1)XORB

40、X, VALUE;BX =54CBH(2)ORBX, VALUE;BX =:54EBH(3)ANDBX, 00H;BX :=0(4)SUBBX, VALUE;BX =543BH(5)XORBX, 0FFH;BX :=545CH(6)TESTBX, 01H;BX :=54A3H4.11 假设数据段的定义如下所示:P1 DW ?P2 DB 32 DUP(?)PLENTH EQU $-P1试问PLENTH的值为多少?它表示什么意义?答:PLENTH = 2 + 32 = 34它表示以P1和P2开头的成组变量共占用了多少个字节的内存空间。第5章微机的存储器5.4 某一 RAM内部采用两个32选1的地址

41、译码器,并且有一个数据输入端和一个数据输 出端,试问:(1 )该RAM的容量是多少?(2)基本存储电路采用何种译码电路?(3)答:存储阵列排列成怎样一种阵列格式?(1 )容量是:32 X 32 = 1024bit = 1Kb ;(2) 基本存储电路采用双译码方式;(3) 存储阵列排列成 32 X 32的矩阵。5.5 设有一个具有13位地址和8位字长的存储器,试问:(1 )存储器能存储多少字节信息?(2) 如果存储器由1K X 4位RAM芯片组成,共计需要多少片?(3) 需要哪几位高位地址做片选译码来产生芯片选择信号?答:(1) 存储器能存储信息:213X 8位=8KB ;(2) 若由1K X

42、4位RAM芯片组成,则位扩充需要2片,容量扩充需要8片,共计2X 8=16 片;(3) 扩充的8组芯片需用3-8译码器进行片选,由于地址总线的A9Ao需要与各RAM芯片地址线并联,所以用高位地址A12、An、A10作片选译码来产生芯片选择信号。5.6 下列RAM各需要多少地址线进行寻址?多少条数据I/O线?地址线I/O线512 X4941K X41041K X81082K X11114K X112116K X414464K X1161256K X41845.7 分别用1024 X 4位和4K X 2位芯片构成64K X 8位的随机存取存储器,各需多少片?答:(1 )由1024X 4位的芯片组成

43、 64KX 8位的RAM芯片,位扩充需要 2片,容量扩充需要 64片,共计64 X 2=128片;(2)用4K X 2位的芯片组成64K X 8位的RAM芯片,位扩充需要 4片,容量扩充需要 16 片,共计16X 4=64片。5.8 在有16根地址总线的微机系统中,根据下面两种情况设计出存储器片选的译码电路 及其与存储器芯片的连接电路。(1) 采用1K X 4位存储器芯片,形成 32K字节存储器。(2) 采用2K X 8位存储器芯片,形成 32K字节存储器。答:(1 )由1K X 4位的芯片组成32K字节存储器,位扩充需要 2片,容量扩充需要 32片,共 计 32 X 2=64 片;(2)用2

44、K X 8位的芯片组成32K字节存储器,不需要进行位数扩充, 容量扩充需要16片, 即共需16片。5.10使用下列RAM芯片,组成所需的存储容量,问各需多少RAM芯片?各需多少 RAM芯片组?共需多少条寻址线?每块片子需多少条寻址线?(1) 512 X 2位的芯片,组成 8KB的存储容量。(2) 1K X 4位的芯片,组成 64KB的存储容量。答:(1)位扩充需要4片,容量扩充需要16片,共需4 X 16=64片(分为16组,每组4片), 共需13根地址线,每块芯片需 9条地址线。(2)位扩充需要2片,容量扩充需要64片,共需2 X 64=128片(分为64组,每组2片), 共需16根地址线,

45、每块芯片需 10条地址线。5.16 256X 4位的RAM芯片,组成4KB的存储容量,(1 )每片需要多少地址线?(2) 共需多少地址线?(3) 多少块芯片?(4) 多少芯片组?答:(1) 256=28,故每片需要8根地址线。(2) 4K=2 12,故共需12根地址线。(3) 用256 X 4位的芯片组成4KB的存储器,位扩充需要 2片,容量扩充需要16片,共计 16X 2=32 片。(4) 2片为1组,共16个芯片组。5.19 已知某RAM芯片的引脚共有12根地址线,8位数据线,该存储器的容量为多少字 节?若该芯片所占存储空间的起始地址为1000H,其结束地址是多少?答:(1) 存储器容量为

46、212 X 8位=4KB ;(2) 该存储器的绝对地址范围为OOOH FFFH,所以,若该芯片所占存储空间的起始地址 为1000H,则其结束地址为 仆FFH。5.23 已知某16位微机系统的CPU与RAM连接的部分示意图, 若RAM采用每片容量为 2K X 2位的芯片,试填空回答下列问题(1 )根据题意,本系统需要该种芯片(32 )片(2)设由74LS138的丫5和丫6端分别引出引线连至 RAM1和RAM2两组芯片的CS端,则 RAM1 和 RAM2 的地址范围分别是(0FA800H 0FAFFFH )与(OFBOOOH 0FB7FFH )。4L-Z13NA B1 2 2G G -G ABC3

47、33盘RAAII的函崙3至R VA12的而tD说明:因为16位微机系统的存储器中数据仍是按字节存放,所以该题中存储器的位数最大可扩充为8位,因此需要4片2KX2位的芯片进行位扩充;另外,存储器的地址线共用了14根( AoAi3),所以容量是由2K扩充为16K (214),需要8片2KX2位的芯片。综上,此16位微机系统的CPU进行存储器扩充时共需要2KX2位芯片的数目为4X 8 = 32片。扩充后存储器的容量为16KX8位,即16KB。(这里可参考一下教材中关于16位微处理器8086存储器的扩充)第6章输入输出与中断6.2 接口电路的信息可以分为哪几类?接口电路的基本结构特点?答:(1 )接口

48、电路的信息可以分为:数据信息、状态信息和控制信息(2)根据传送不同信息的需要,接口电路的基本结构有如下特点: 3种(数据、状态、控制)信息的性质不同,应通过不同的端口分别传送。 在用输入输出指令(IN/OUT )来寻址外设(实际寻址端口)的CPU中,外设的状态作为一种输入数据,而 CPU的控制命令,是作为一种输出数据,从而可通过数 据总线来分别传送。 端口地址由CPU地址总线的低 8位或低16位地址(如8086用DX间接寻址外设端口时)信息来确定,CPU根据I/O指令提供的端口地址来寻址端口,然后同外设交换信息。6.3 CPU与外设交换数据的传送方式可分为哪几种?试简要说明它们各自的特点。答: CPU与外设交换数据的传送方式可分为3种:程序传送、中断传送和直接存储器存取(DMA )传送。程序查询输入输出传送方式适用于计算机工作任务较轻或CPU不太忙的情况;优点:能较好的协调外设和 CPU之间定时的差别;程序和接口电路比较简单;缺点:CPU必须作程序等待循环,不断测试外设的状态, 直至外设为交换数据准备就绪。此循环等待方式很花费时间,大大降低了 CPU的运行效率。在实时控制系统中,一般具有多个工作速度不同的外设, CP

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论