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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

本文(微型计算机原理及应用技术第二版课后作业解答全集课件.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

微型计算机原理及应用技术第二版课后作业解答全集课件.docx

1、微型计算机原理及应用技术第二版课后作业解答全集课件 第1章 计算机基础知识3. 填空:(1) (1234)10( )2( )16(2) (34.6875)10( )2( )16(3) (271.33)10( )2( )16(4) (101011001001)2( )10( )16(5) (1AB.E)16( )10( )2(6) (10101010.0111)2( )10( )16【解】(1) (1234)10( 10011010010 )2( 4D2 )16(2) (34.6875)10( 100010.1011 )2( 22.B )16(3) (271.33)10( 100001111.0

2、10101 )2( 10F.54 )16(4) (101011001001)2( 2761 )10( AC9 )16(5) (1AB.E)16( 427.875 )10(110101011.111 )2(6) (10101010.0111)2( 170.4375 )10( AA.7 )164. 已知X=36,Y=136,Z=1250,请写出X、Y、Z的16位原码、反码和补码。【解】X原0000 0000 0010 0100Y原1000 0000 1000 1000Z原1000 0100 1110 0010X反0000 0000 0010 0100Y反1111 1111 0111 0111Z反1

3、111 1011 0001 1101X补0000 0000 0010 0100Y补1111 1111 0111 1000Z补1111 1011 0001 11105. 已知X补=01010101B,Y补=10101010B,Z补=1000111111111111B,求X、Y、Z及XY、YZ的十进制值为多少?【解】YZ运算时Y需要扩展符号位X85Y86Z28673XY01010101B10101010B11111111B1YZ11111111 10101010B10001111 11111111B11111111 10101010B01110000 00000001B0110 1111 1010

4、 1011B285878. 将下列8421BCD码表示为十进制数和二进制数:(1) 01111001 (2) 001010000101 (3) 011000000111 (4) 010110010000【解】(1) 79, 1001111B(2) 285, 100011101B(3) 607, 1001011111B(4) 590, 1001001110B12. 微型计算机由哪几部分组成,各部分的功能是什么?【解】微型计算机由运算器、控制器、存储器、输入设备、输出设备五大部分组成。运算器完成算术运算和逻辑运算;控制器分析命令并指挥协调各部件统一行动完成命令规定的各种动作或操作;存储器存放原始数

5、据、中间结果和最终结果以及程序;输入设备、输出设备与外界交换信息。13. CPU在内部结构上由哪几部分组成,CPU应具备什么功能?【解】微处理器(CPU)由运算器和控制器组成。CPU应具备的功能:对数据进行处理并对处理过程进行控制。17. 如果某几种CPU的地址总线分别有8、16、20、32条,它们各自能寻址的存储器的容量是多少?【解】地址总线8条: 28256B地址总线16条:21664KB地址总线20条:2201MB地址总线32条:2324GB18. 什么是硬件,什么是软件,硬件和软件的关系如何?【解】硬件是指组成计算机的各种电子的、机械的、光磁学的物理器件和设备,它们构成了计算机的物理实

6、体。软件则是指为了运行、管理和维护计算机而编制的各种程序及其有关的文档资料的总称。硬件是基础,软件是灵魂,两者既相互独立,又相互依存,缺一不可。硬件和软件合起来才组成一个完整的计算机系统。19. 说明位、字节、字长的概念及它们之间的关系。【解】(1) 位(bit)。位是计算机所能表示的最基本最小的数据单位。它只能有两种状态“0”和“1”,即二进制位。(2) 字(Word)。计算机中作为一个整体参与运算、处理和传送的一串二进制数,是计算机中信息的基本单位。(3) 字长(Word Length)。计算机中每个字所包含的二进制位数称为字长。它们之间的关系:字由位构成,字长指每个字所包含的位的个数。1

7、. 8086 CPU 由哪两部分构成,它们的主要功能是什么?在执行指令期间,EU 能直接访问存储器吗,为什么?【解】8086CPU由执行部件(EU)和总线接口部件(BIU)两部分组成。执行部件由内部寄存器组、算术逻辑运算单元(ALU)与标志寄存器(FR)及内部控制逻辑等三部分组成。寄存器用于存储操作数和中间结果;算术逻辑单元完成16位或8位算术逻辑运算,运算结果送上ALU内部数据总线,同时在标志寄存器中建立相应的标志;内部控制逻辑电路的主要功能是从指令队列缓冲器中取出指令,对指令进行译码,并产生各种控制信号,控制各部件的协同工作以完成指令的执行过程。总线接口部件(BIU)负责CPU与存储器、I

8、/O设备之间传送数据、地址、状态及控制信息。每当EU部件要执行一条指令时,它就从指令队列头部取出指令,后续指令自动向前推进。EU要花几个时钟周期执行指令,指令执行中若需要访问内存或I/O设备,EU就向BIU申请总线周期,若BIU总线空闲,则立即响应,若BIU正在取一条指令,则待取指令操作完成后再响应EU的总线请求。3. 8086 CPU 中有哪些寄存器,各有什么用途?【解】8086共有8个16位的内部寄存器,分为两组: 通用数据寄存器。四个通用数据寄存器AX、BX、CX、DX均可用作16位寄存器也可用作8位寄存器。用作8位寄存器时分别记为AH、AL、BH、BL、CH、CL、DH、DL。AX(A

9、H、AL)累加器。有些指令约定以AX(或AL)为源或目的寄存器。实际上大多数情况下,8086的所有通用寄存器均可充当累加器。BX(BH、BL)基址寄存器。BX可用作间接寻址的地址寄存器和基地址寄存器,BH、BL可用作8位通用数据寄存器。CX(CH、CL)计数寄存器。CX在循环和串操作中充当计数器,指令执行后CX内容自动修改,因此称为计数寄存器。DX(DH、DL)数据寄存器。除用作通用寄存器外,在I/O指令中可用作端口地址寄存器,乘除指令中用作辅助累加器。 指针和变址寄存器。BP(Basic Pointer Register)基址指针寄存器。SP(Stack Pointer Register)堆

10、栈指针寄存器。SI(Source Index Register)源变址寄存器。DI(Destination Index Register)目的变址寄存器。BP、SP称为指针寄存器,用来指示相对于段起始地址的偏移量。BP和SP一般用于堆栈段。SI、DI称为变址寄存器,可用作间接寻址、变址寻址和基址变址寻址的寄存器。SI一般用于数据段,DI一般用于数据段或附加段。标志寄存器(FR):是一个16位寄存器,算术逻辑单元进行算术逻辑运算后,在标志寄存器中建立相应的标志。段地址寄存器(CS、DS、SS、ES)。用于存放段地址,根据其主要用途,分为代码段寄存器CS、数据段寄存器DS、堆栈段寄存器SS、附加段

11、寄存器ES。代码段寄存器CS:代码段是存放程序代码的存储区域,代码段寄存器用来存放代码段存储区域的起始地址。数据段寄存器DS:数据段是存放程序中所使用的数据的存储区域,数据段寄存器用来存放程序的数据存储区的起始地址。堆栈段寄存器SS:堆栈段寄存器用来存放堆栈存储区的起始地址。由堆栈段寄存器SS与堆栈指针寄存器SP来确定当前堆栈指令的操作地址。附加段寄存器ES:附加段是为某些字符串操作指令存放目的操作数而设置的一个附加的数据段,附加段寄存器用来存放该附加数据段存储区域的起始地址。指令指针寄存器(IP)。又称程序计数器,是16位寄存器。IP中存放当前将要执行的指令的有效地址,每取出一条指令IP自动

12、增量,即指向了下一条指令。指令队列缓冲器:是一个与CPU速度相匹配的高速缓冲寄存器。在EU执行指令的同时,BIU可以从内存中取出下一条或下几条指令放到指令缓冲器中,EU执行完一条指令后,可以立即从指令缓冲器中执行下一条指令。4. 状态标志与控制标志有何不同,程序中是怎样利用这两类标志的?标志寄存器有哪些标志位,各在什么情况下置位?【解】状态标志根据算术逻辑运算结果由硬件自动设定,它们反映运算结果的某些特征或状态,可作为后继操作(如条件转移)的判断依据。控制标志由用户通过指令来设定,它们可控制机器或程序的某些运行过程。标志寄存器的内容如下:1514131211109876543210OFDFIF

13、TFSFZF-AF-PF-CFCF(Carry Flag)进位标志,反映在运算结果的最高位有无进位或借位。如果运算结果的最高位产生了进位(加法)或借位(减法)则CF=1,否则CF=0。PF(Parity Flag)奇偶标志,反映运算结果中“1”的个数的奇偶性,主要用于判断数据传送过程中是否出错。若结果的低8位中有偶数个“1”则PF=1,否则PF=0。AF(Auxiliary Carry Flag)辅助进位标志,又称半进位标志。加减运算时,若D3向D4产生了进位或借位则AF=1,否则AF=0。在BCD码运算时,该标志用于十进制调整。ZF(Zero Flag)零标志,反映运算结果是否为0。 若结果

14、为零则ZF=1,否则ZF=0。SF(Sign Flag)符号标志,反映运算结果最高位即符号位的状态。如果运算结果的最高位为则SF=1(对带符号数即为负数),否则SF=0(对带符号数即为正数)。OF(Overflow Flag)溢出标志,反映运算结果是否超出了带符号数的表数范围。若超出了机器的表数的范围,即为产生溢出,则OF=1,否则OF=0。DF(Direction Flag)方向标志,用于串处理指令中控制串处理的方向。当DF=1时,每次操作后变址寄存器SI、DI自动减量,因此处理方向是由高地址向低地址方向进行。当DF=0,则SI、DI自动增量,处理方向由低地址向高地址方向进行。该标志由方向控

15、制指令STD或CLD设置或清除。IF(Interrupt Flag)中断允许标志,用于控制CPU是否允许响应可屏蔽中断请求。IF=1为允许响应可屏蔽中断请求,IF=0则禁止响应可屏蔽中断请求。该标志可由中断控制指令STI或CLI设置或清除。TF(Trap Flag)陷阱标志,用于单步操作。TF=1时,每执行一条用户程序指令后自动产生陷阱,进入系统的单步中断处理程序。TF=0时,用户程序会连续不断地执行,不会产生单步中断。5. 求出下列运算后各个标志的状态,并说明进位标志和溢出标志的区别。 (1) 1278H + 3469H (2) 54E3H - 27A0H (3) 3881H + 3597H

16、 (4) 01E3H - 01E3H【解】CF进位标志,反映在运算结果的最高位有无进位或借位。OF溢出标志,反映运算结果是否超出了带符号数的表数范围。机器实际处理时判断是否溢出的方法是根据最高位的进位(CF)与次高位的进位是否相同来确定,若两者不相同则OF=1(表示有溢出),否则OF=0(表示无溢出)。(1)0001 0010 0111 1000 0011 0100 0110 1001 0100 0110 1110 0001运算后各个标志的状态:OFDFIFTFSFZF-AF-PF-CF000110(2) 0101 0100 1110 0011 0010 0111 1010 0000 0010

17、 1100 0100 0011运算后各个标志的状态:OFDFIFTFSFZF-AF-PF-CF000000(3) 0011 1000 1000 0001 0011 0101 1001 0111 0110 1110 0001 1000运算后各个标志的状态:OFDFIFTFSFZF-AF-PF-CF000010(4) 0000 0001 1110 0011 0000 0001 1110 0011 0000 0000 0000 0000运算后各个标志的状态:OFDFIFTFSFZF-AF-PF-CF0010106. 8086 CPU 中存储器的逻辑地址和物理地址之间有什么关系,各有多少值?【解】物理

18、地址为某一个存储单元的实际地址,对于8086它是一个20位的地址。物理地址从00000HFFFFFH变化,对应1MB的空间。逻辑地址,又称偏移地址或有效地址,即对段首的偏移量。偏移地址从0000HFFFFH变化,对应64KB的空间。物理地址的获得方法是:将段寄存器的内容左移4位(即16),与逻辑地址相加,得到20位物理地址。根据寻址方式的不同,偏移地址可以来自程序计数器(IP)或其它寄存器。7. 8086CPU使用的存储器为什么要分段,怎样分段?为什么要设置段寄存器,有几个段寄存器?各段寄存器有什么意义?【解】8086 CPU内部数据结构是16位的,即所有的寄存器都是16位的,而外部寻址空间为

19、1MB,即需要20位地址线。为了能用内部寄存器中的16位地址来寻址1MB空间,8086将1MB空间以16字节为一个内存节,共分成64K个节。节的起始地址分别为00000H、00010H、00020H、FFFF0H,称为段基址。节的起始地址的后4位二进制数为全0,称为节的段地址。用于存放段地址的寄存器称为段寄存器,根据其主要用途,分为代码段寄存器CS、数据段寄存器DS、堆栈段寄存器SS、附加段寄存器ES。代码段寄存器CS:用来存放代码段存储区域的起始地址。数据段寄存器DS:数存放程序的数据存储区的起始地址。堆栈段寄存器SS:用来存放堆栈存储区的起始地址。由堆栈段寄存器SS与堆栈指针寄存器SP来确

20、定当前堆栈指令的操作地址。附加段寄存器ES:附加段是为某些字符串操作指令存放目的操作数而设置的一个附加的数据段,附加段寄存器用来存放该附加数据段存储区域的起始地址。12. 8086的I/O端口寻址范围是多少?什么是I/O端口与内存分别独立编址?【解】8086的I/O端口使用16位地址A15A0,I/O端口地址范围为0000HFFFFH,可寻址空间为64KB。I/O端口与内存分别独立编址时,指令访问的是I/O端口还是内存,由地址信息无法区分,由M/信号区分是I/O端口的寻址与内存寻址 。14. 什么是基地址和位移量,它们之间有何联系?【解】8086 CPU内部数据结构是16位的,而外部寻址空间为

21、1MB。为了能用内部寄存器中的16位地址来寻址1MB空间,8086将1MB空间以16字节为一个内存节(Paragraph),共分成64K个节。节的起始地址称为段基址。偏移地址是存储地址对段首的偏移量。偏移地址从0000HFFFFH变化,对应64KB的空间。它们之间有何联系:物理地址基地址16位移量。15. 设CS=1200H,IP=0FF00H,此时指令的物理地址是多少?指向这一物理地址的CS和IP的值是惟一的吗?【解】指令的物理地址:12000H0FF00H21F00H指向这一物理地址的CS和IP的值不是惟一的。16. 若CS=1000H,指出当前代码段可寻址的存储空间的大小和地址范围。【解

22、】当前代码段可寻址的存储空间的大小:64KB当前代码段可寻址的存储空间的地址范围:10000H1FFFFH1. 若DS=3000H,BP=2000H,SI=1000H,32000H=00H,32001H=40H,SS=3000H,31000H=20H,31001H=60H,33000H=50H,33001H=60H,说明下列各条指令执行后,AX中的内容是什么?并说明各条指令中源操作数的寻址方式。(1) MOV AX,DS (2) MOV AX,2000H(3) MOV AX,SI (4) MOV AX,BP(5) MOV AX,BP+SI【解】(1) AX3000H 寄存器寻址(2) AX40

23、00H 直接寻址(3) AX6020H 寄存器间接寻址(4) AX4000H 寄存器间接寻址(5) AX6020H 基址加变址寻址2. 指出下列指令中的非法指令。(1) MOV BX,AL (2) MOV CS,2000H(3) PUSH 4567H (4) XCHG VAR1,VAR2(5) ADD AL,148H (6) MOV DS,2000H(7) MOV BH,SI (8) SUB 38H,AL【解】非法指令:(1) MOV BX,AL BX和AL的长度不一致(2) MOV CS,2000H CS段寄存器不能作目的操作数(3) PUSH 4567H 只能将寄存器或存储单元的内容压入堆

24、栈,不能是立即数(4) XCHG VAR1,VAR2 两个存储单元之间不能直接交换数据(5) ADD AL,148H 运算溢出(6) MOV DS,2000H 立即数不能直接传送给DS段寄存器(7) MOV BH,SI BH和SI的长度不一致(8) SUB 38H,AL 目的操作数不能是立即数3. 若SP=2000H,AX=3355H,BX=4466H,试指出下列指令或程序段执行后有关寄存器的内容。 (1) PUSH AX 执行后AX=?,SP=? (2) PUSH AX PUSH BX POP DX POP CX 执行后AX=?,CX=?,DX=?,SP=?【解】(1) 执行后AX=3355

25、H,SP=1FFEH(2) 执行后AX=3355H,CX=3355H,DX=4466H,SP=2000H4. 请按下面的要求写出相应的汇编指令或指令序列。(1) 将1234H送入DS中。(2) 将5678H与AX中的数相加,结果放在AX中。(3) 将DATAX和DATAY相加,其和放在DATAY中。(4) 将AX中的高4位变为全0。(5) 将BX中的低2位变为全1。(6) 将CX中的D3D7位取反。【解】(1) MOV AX,1234HMOV DS,AX(2) ADD AX,5678H(3) MOV AX,DATAXADD AX,DATAYMOV DATAY,AX(4) AND AX,0FFF

26、H(5) OR AX,0003H(6) MOV AX,CXAND AX,07HXOR CX,0FFFFHAND CX,0FFF8HADD CX,AX5. 若AL=0FFH,BL=03H,指出下列指令执行后标志AF、OF、ZF、SF、PF、CF的状态。(1) ADD BL,AL (2) INC BL(3) SUB BL,AL (4) NEG BL(5) AND BL,AL (6) MUL BL(7) CMP BL,AL (8) IMUL BL(9) OR BL,AL (10)XOR BL,BL 【解】执行后:AFOFZFSFPFCF(1) ADD BL,AL100001(2) INC BL000

27、00不影响(3) SUB BL,AL100001(4) NEG BL100101(5) AND BL,AL任意值00010(6) MUL BL任意值1任意值任意值任意值1(7) CMP BL,AL100001(8) IMUL BL任意值1任意值任意值任意值1(9) OR BL,AL任意值00110(10) XOR BL,BL 任意值001109. 执行下列程序段,指出各相关寄存器的内容。MOV AX,0A0BHDEC AXSUB AX,0FFHAND AX,00FFHMOV CL,3SAL AL,CLADD AL,25HXCHG AL,AHPUSH AXPOP BXINC BL【解】各相关寄存

28、器的内容:MOV AX,0A0BH ;AX:0A0BHDEC AX ;AX:0A0AHSUB AX,0FFH ;AX:090BHAND AX,00FFH ;AX:000BHMOV CL,3 ;CL:03HSAL AL,CL ;AX:0058HADD AL,25H ;AX:007DHXCHG AL,AH ;AX:7D00HPUSH AX ;AX:7D00HPOP BX ;BX:7D00HINC BL ;BX:7D01H10. 用串操作指令将100H个字符从2100H处搬到1000H处,并且从中检索与AL中所存字符相同的存储单元,并将该单元的内容替换成空格,本程序只替换检索到的第一个相同的单元。请在下列空格中填入合适的指令,使程序段完成上述功能。 MOV SI,2100H (1) MOV CX,100H CLD (2) MOV DI,1000H MOV CX,100H (3) JNZ K1 (4) MOV DI,20H K1: 【解】(1) MOV DI,1000H(2) REP MOVSB(3) REPNE SCASB(4) DEC DI12. 编程求出AX中存放的16位二进制数中1的个数,将其存入CL中(若AX=1001010011001011B则将8存入CL)

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1