微机原理及应用教材课后习题及答案

合集下载

李伯成《微型计算机原理及应用》课后习题答案

李伯成《微型计算机原理及应用》课后习题答案

李伯成《微机原理》习题第一章本章作业参考书目:① 薛钧义主编《微型计算机原理与应用——Intel 80X86系列》机械工业出版社2002年2月第一版② 陆一倩编《微型计算机原理及其应用(十六位微型机)》哈尔滨工业大学出版社1994年8月第四版③ 王永山等编《微型计算机原理与应用》西安电子科技大学出版社2000年9月1.1将下列二进制数转换成十进制数:X=10010110B=1*27+0*26+0*25+1*24+0*23+1*22+1*21 +0*21=128D+0D+0D+16D+0D+0D+4D+2D=150DX=101101100B=1*28+0*27+1*26+1*25+0*24+1*23+1*22+0*21+0*20=256D+0D+64D+32D+0D+16D+4D+0D=364DX=1101101B=1*26+1*25+0*24+1*23+1*22+0*21 +1*20=64D+32D+0D+8D+4D+0D+1D=109D1.2 将下列二进制小数转换成十进制数:(1)X=0.00111B=0*2-1+0*2-2+1*2-3+1*2-4+1*2-5=0D+0D+0.125D+0.0625D+0.03125D=0.21875D(2) X=0.11011B=1*2-1+1*2-2+0*2-3+1*2-4+1*2-5=0.5D+0.25D+0D+0.0625D+0.03125D=0.84375D(3) X=0.101101B=1*2-1+0*2-2+1*2-3+1*2-4+0*2-5+1*2-6=0.5D+0D+0.125D+0.0625D+0D+0.015625D=0.703125D1.3 将下列十进制整数转换成二进制数:(1)X=254D=11111110B(2)X=1039D=10000001111B(3)X=141D=10001101B1.4 将下列十进制小数转换成二进制数:(1)X=0.75D=0.11B(2) X=0.102 D=0.0001101B(3) X=0.6667D=0.101010101B1.5 将下列十进制数转换成二进制数(1) 100.25D= 0110 0100.01H(2) 680.75D= 0010 1010 1000.11B1.6 将下列二进制数转换成十进制数(1) X=1001101.1011B =77.6875D(2) X=111010.00101B= 58.15625D1.7 将下列二进制数转换成八进制数(1)X=101011101B=101’011’101B=535Q(2) X=1101111010010B=1’101’111’010’010B=15722Q(3) X=110B=6Q1.8 将下列八进制数转换成二进制数:(1)X=760Q=111'110'000B(2)X=32415Q=11'010'100'001'101B1.9 将下列二进制数转换成十六进制数:X=101 0101 1110 1101B= 5 5 E D HX= 1100110101'1001B= 11 0011 0101 1001B= 3 3 5 9HX= 1000110001B= 10 0011 0001 B= 2 3 1 H1.10 将下列十六进制数转换成二进制数:X= ABCH= 1010 1011 1100 BX=3A6F.FFH = 0011 1010 0110 1111.1111 1111BX= F1C3.4B =1111 0001 1100 0011 . 0100 1011B1.11 将下列二进制数转换成BCD码:(1) X= 1011011.101B= 1'011'011.101B= 91.625d=1001 0001.0110BCD(2) X=1010110.001B= 1’010’110.001 =126.1 BCD1.12 将下列十进制数转换成BCD码:(1)X=1024D=0001 0000 0010 0100 BCD(2)X=632 = 0110 0011 0010 BCD(3)X= 103 = 0001 0000 0011 BCD1.13 写出下列字符的ASCI I码:A 41H 65D 0100 0001B9 39H 47D* 2AH 42D= 3DH 45D!21H 33D1.14 若加上偶校验码,下列字符的ASCII码是什么?字符原码加上偶校验码之后B 42H,0100 0010B 42H,0100 0010B4 34H,0011 0100B B4H,1011 0100B7 37H,0011 0111B B7H,1011 0111B= 3DH,0011 1101B BDH,1011 1101B!21H,0010 0001B 21H,0010 0001B?3FH 0011 1111B 3FH,0011 1111B1.15 加上奇校验,上面的结果如何?字符原码加上奇校验码之后B 42H,0100 0010B C2H,1100 0010B4 34H,0011 0100B 34H,0011 0100B7 37H,0011 0111B 37H,0011 0111B= 3DH,0011 1101B 3DH,0011 1101B!21H,0010 0001B A1H,1010 0001B?3FH 0011 1111B BFH,1011 1111B1.16 计算下式:(1)[‘B’/2+ABH-11011001B]*0.0101BCD=(42H/2+ABH-D9H)*0.21 BCD = = F3H*0.21 BCD =(-DH) *0.21 BCD= -2.73D(2) 3CH –[(84D)/(16Q)+’8’/8D]= 60D-[84D/14D+(56/8)]=60D-[13]D==47D1.17 对下列十进制数,用八位二进制数写出其原码、反码和补码:(正数的反码与原码相同,负数的反码除符号位之外其余各位按位取反。

微机原理及应用(陈继红、徐晨)课后习题答案

微机原理及应用(陈继红、徐晨)课后习题答案

微机原理及应用(陈继红、徐晨)课后习题答案第三章8086/8088指令系统和寻址方式习题答案(部分)3.1 总结计算机中十进制、二进制、八进制及十六进制数的书写形式。

123D、0AFH、77Q、1001110B分别表示什么计数制的数答案:123D、0AFH、77Q、1001110B分别表示十进制、十六进制、八进制、二进制。

3.2字长为8位、16位二进制数的原码、补码表示的最大数和最小数分别是什么答案:8位原码表示的最大数:(27-1)、8位补码表示的最大数:(27-1)、8位原码表示的最小数:-(27-1)、8位补码表示的最小数-27。

16位原码表示的最大数:(215-1)、16位补码表示的最大数:(215-1)、16位原码表示的最小数:-(215-1)、16位补码表示的最小数-215。

3.3 把下列十进制数分别转换为二进制数和十六进制数。

(1)125 (2)255 (3)72 (4)5090答案:(1) 125二进制数:0111 1101B;十六进制数:7DH。

(2)255二进制数:1111 1111B;十六进制数:0FFH。

(3)72二进制数:0100 1000B;十六进制数:48H。

(4)5090二进制数:0001 0011 1110 0010B;十六进制数:13E2H。

3.4 把下列无符号二进制数分别转换为十进制数和十六进制数。

(1)1111 0000 (2)1000 0000 (3)1111 1111 (4)0101 0101答案:(1)1111 0000十进制数:240D;十六进制数:0F0H。

(2)1000 0000十进制数:128D;十六进制数:80H。

(3)1111 1111十进制数:255D;十六进制数:0FFH。

(4)0101 0101十进制数:85D;十六进制数:55H。

3.5 把下列无符号十六进制数分别转换为十进制数和二进制数。

(1)FF (2)ABCD (3)123 (4)FFFF答案:(1)FF十进制数:255D;二进制数;1111 1111B。

《微型计算机原理及应用》课后习题答案

《微型计算机原理及应用》课后习题答案

《微型计算机原理及应用》习题解答第一章基础知识1.1 解释题(1)微处理器【解答】由大规模集成电路芯片构成的中央处理器(CPU),叫做微处理器。

(2)微型计算机【解答】以微处理器为基础,配以内存储器、输入输出接口电路、总线以及相应的辅助电路而构成的计算机裸机,叫做微型计算机。

(3)微型计算机系统【解答】微型计算机系统由硬件系统和软件系统组成。

即由微型计算机、配以相应的外部设备(如打印机、显示器、键盘、磁盘机等),再配以足够的软件而构成的系统。

(4)单板机【解答】将微处理器、RAM、ROM以及I/O接口电路,再配上相应的外设(如小键盘、LED显示器等)和固化在ROM中的监控程序等,安装在一块印刷电路板上构成的微型计算机系统称为单板机。

(5)运算器【解答】运算器是直接完成各种算术运算、逻辑运算的部件,主要由ALU(Arithmetic and Logic Unit,算术逻辑部件)、通用寄存器、标志寄存器等组成。

(6)地址总线【解答】地址总线是CPU对内存或外设进行寻址时,传送内存及外设端口地址的一组信号线。

地址总线的条数多少决定了CPU的寻址能力。

(7)数据总线【解答】数据总线是CPU与内存或外设进行信息交换时,所用的一组数据信号线。

它决定了CPU 一次并行传送二进制信息的位数,反映出CPU的“字长”这个重要性能指标。

(8)控制总线【解答】控制总线是在CPU与外部部件之间传送控制信息(如读/写命令、中断请求命令等)的一组信号线。

1-2 单片机应包括哪些基本部件?其主要应用于哪些领域?【解答】一般单片机芯片中包括微处理器、RAM、ROM、I/O接口电路、定时器/计数器,有的还包括A/D、D/A转换器等。

其主要应用于智能化仪器仪表及工业控制领域。

1-3 按图1-11和图1-12,写出取第二条指令操作码和执行第二条指令的过程。

【解答】ADD AL,12H指令的取指过程:1)IP的值(002H)送入地址寄存器AR;2)IP的内容自动加1,变为003H;3)AR将地址码通过地址总线送到存储器的地址译码器,经译码后选中002H单元;4)微处理器给出读命令MEMR;5)所选中的002H单元内容04H送上数据总线DB;6)数据总线DB上的数据04H送到数据寄存器DR;7)因是取指操作,取出的是指令操作码04H,即由DR送入指令寄存器IR;8)IR中的操作码经指令译码器ID译码后,通过PLA发出执行该指令的有关控制命令。

[工学]微型计算机原理及应用课后答案

[工学]微型计算机原理及应用课后答案

第一部分习题解答(一)习题一解答【习题一】1、解释下列术语:(1)微处理器、微型计算机和微型计算机系统;(2)溢出;(3)I/O接口。

2、对于下列二进制数,如果为无符号数,值为多少?如果为带符号数,值又为多少?(1)01011010 (2)10110110 (3)10001101 (4)111110013、求下列机器数的原码、反码和补码。

(1)01000000 (2)01111101 (3)10000010 (4)111111114、对于下列十进制数,采用8位补码计算,判断下列运算是否溢出。

(1)(-76)+65 (2)(-76)-65 (3)76-(-65)(4)76+(-65)5、完成下列无符号数的运算,并转换为十进制数进行核对。

(1)10011010+00101101 (2)11001000-00001101(3)1101×1010 (4)11000011÷01016、写出下列字符串的ASCII码值;This is an English book.答案【习题一】1、(1)微处理器:是微型计算机的核心,其基本功能是进行数据的算术运算和逻辑运算,暂存数据并控制和指挥其他部件协调一致的工作。

由算术逻辑单元、控制器、寄存器陈列等组成;微型计算机:由微处理器、内存储器、I/O接口电路及系统产品线组成;微计算机系统包括硬件系统(中央处理器(CPU)、存储器、输入输出接口和输入输出设备等部件)和软件系统(软件系统包括系统软件和应用软件两部分)两部分。

(2)溢出:指计算机中用有限位的二进制来表示数据,在运算过程中,可能使用运算结果超出有限位的表示的范围,即为溢出。

(3)I/O接口:I/O接口电路是介于计算机和外部设备之间的电路。

I/O接口电路基本功能:1)缓存数据,使各种速度的外部设备与计算机速度相匹配;2)信号变换,使各种电气特性不同的外部设备与计算机相连接;3)联络作用,使外部设备的输入输出与计算机操作同步。

微机原理及应用习题库与答案

微机原理及应用习题库与答案

微机原理及应⽤习题库与答案微机原理及应⽤习题库与答案习题与练习题1第1章绪论1.计算机分那⼏类?各有什么特点?答:传统上分为三类:⼤型主机、⼩型机、微型机。

⼤型主机⼀般为⾼性能的并⾏处理系统,存储容量⼤,事物处理能⼒强,可为众多⽤户提供服务。

⼩型机具有⼀定的数据处理能⼒,提供⼀定⽤户规模的信息服务,作为部门的信息服务中⼼。

微型机⼀般指在办公室或家庭的桌⾯或可移动的计算系统,体积⼩、价格低、具有⼯业化标准体系结构,兼容性好。

2.简述微处理器、微计算机及微计算机系统三个术语的内涵。

答:微处理器是微计算机系统的核⼼硬件部件,对系统的性能起决定性的影响。

微计算机包括微处理器、存储器、I/O接⼝电路及系统总线。

微计算机系统是在微计算机的基础上配上相应的外部设备和各种软件,形成⼀个完整的、独⽴的信息处理系统。

3.80X86微处理器有⼏代?各代的名称是什么?答:从体系结构上可分为3代:← 8080/8085:8位机。

↑ 8086/8088/80286:16位机。

→ 80386/80486:32位机。

第2章微处理器结构及微计算机的组成1.8086是多少位的微处理器?为什么?答:8086是16位的微处理器,其内部数据通路为16位,对外的数据总线也是16位。

2.EU与BIU各⾃的功能是什么?如何协同⼯作?答:EU是执⾏部件,主要的功能是执⾏指令。

BIU是总线接⼝部件,与⽚外存储器及I/O接⼝电路传输数据。

EU经过BIU进⾏⽚外操作数的访问,BIU为EU提供将要执⾏的指令。

EU与BIU可分别独⽴⼯作,当EU不需BIU提供服务时,BIU可进⾏填充指令队列的操作。

3.8086/8088与其前⼀代微处理器8085相⽐,内部操作有什么改进?答:8085为8位机,在执⾏指令过程中,取指令与执⾏执令都是串⾏的。

8086/8088由于内部有EU和BIU两个功能部件,可重叠操作,提⾼了处理器的性能。

4.8086/8088微处理器内部有那些寄存器,它们的主要作⽤是什么?答:执⾏部件有8个16位寄存器,AX、BX、CX、DX、SP、BP、DI、SI。

《微型计算机系统原理及应用》课后答案_(第3版)清华大学出版社__杨素行

《微型计算机系统原理及应用》课后答案_(第3版)清华大学出版社__杨素行

第一章 微型计算机基础题1-1 计算机发展至今,经历了哪几代?答:电子管计算机、晶体管计算机、集成电路计算机、超大规模集成电路计算机、非冯诺伊曼计算机和神经计算机。

题1-2 微机系统由哪几部分组成?微处理器、微机、微机系统的关系是什么? 答:1、微机系统分硬件和软件,硬件包括CPU、存储器、输入输出设备和输入输出接口,软件包括系统软件和应用软件。

2、微处理器是指微机的核心芯片CPU;微处理器、存储器和输入输出设备组成微机;微机、外部设备和计算机软件组成微机系统。

题1-3 微机的分类方法包括哪几种?各用在什么应用领域中?答:按微处理器的位数,可分为1位、4位、8位、32位和64位机等。

按功能和机构可分为单片机和多片机。

按组装方式可分为单板机和多板机。

单片机在工业过程控制、智能化仪器仪表和家用电器中得到了广泛的应用。

单板机可用于过程控制、各种仪器仪表、机器的单机控制、数据处理等。

题1-4 微处理器有哪几部分组成?各部分的功能是什么?答:微处理器包括运算器、控制器和寄存器三个主要部分。

运算器的功能是完成数据的算术和逻辑运算;控制器的功能是根据指令的要求,对微型计算机各部分发出相应的控制信息,使它们协调工作,从而完成对整个系统的控制;寄存器用来存放经常使用的数据。

题1-5 微处理器的发展经历了哪几代?Pentium系列微处理器采用了哪些先进的技术?答:第一代4位或低档8位微处理器、第二代中高档8位微处理器、第三代16位微处理器、第四代32位微处理器、第五代64位微处理器、第六代64位高档微处理器。

Pentium系列微处理器采用了多项先进的技术,如:RISC技术、超级流水线技术、超标量结构技术、MMX技术、动态分支预测技术、超顺序执行技术、双独立总线DIB技术、一级高速缓冲存储器采用双cache结构、二级高速缓冲存储器达256KB或512KB、支持多微处理器等。

题1-6 何为微处理器的系统总线?有几种?功能是什么?答: 系统总线是传送信息的公共导线,微型计算机各部分之间是用系统总线连接的。

《微机原理及应用》教材课后习题参考答案

《微机原理及应用》教材课后习题参考答案

《80X86/Pentium微型计算机原理及应用》教材课后习题参考答案第三章3-5(1)MOV SI, 2100H 源:立即数;目标:寄存器(2)MOV CX, DISP[BX] 源:基址,EA=BX+DISP,PA=DS×16+BX+DISP;目标:寄存器(3)源:寄存器;目标:寄存器间接寻址EA=SI,PA=DS×16+SI(4)源:基址加变址,EA=BX+SI,PA=DS×16+BX+SI;目标:寄存器(5)源:寄存器;目标:寄存器(6)源:基址,EA=BX+10H,PA= DS×16+BX+10H;目标:寄存器(7)源:寄存器间接,EA=BX,PA= ES×16+BX;目标:寄存器(8)源:带位移量的基址加变址,EA=BX+SI+20H,PA= DS×16+BX+SI+20H;目标:寄存器(9)源:寄存器;目标:寄存器间接,EA=BP,PA= SS×16+BP(10)源:寄存器;目标:存储器,EA=SP-2,PA= SS×16+SP-23-7(1)源操作数错,基址+基址不能用在存储器寻址方式中,只能基址+变量,改成MOV AX, [BX+SI](2)错,V ALUE1和V ALUE2一般为自己定义的变量名称,则此两操作数的组合形式为存储器和存储器,ADD指令无此组合形式(3)错,立即数不能直接传给段寄存器(4)错,CS不能作为目标操作数(5)错,立即数不能作为目标操作数,两个操作数互换位置即可(6)如果V ALUE1是用DW定义的WORD型变量,则此题正确,否则错误(7)错,段寄存器不能直接传给段寄存器(8)错,移位次数超过1时,应该先将移位次数送给CL,改成MOV CL, 3; ROL [BX][DI],CL(9)错,NOT操作符只有一个操作数(10)对,CS不能作为目标操作数,但可以作为源操作数(11)错,不能直接将立即数压入堆栈(12)错,两处错误,1:IN指令应该AL在前,端口地址在后;2:端口地址100H超过8位数能表示的范围,应该先将100H送给DX,改成MOV DX, 100H; IN AL, DX(13)错,LEA指令的第二操作数必需为存储器寻址方式(14)错,CX不能作为寄存器间接寻址方式,应将CX改成BX/BP/SI/DI之一3-8(1)AX=3355H, SP=1FFEH(2)AX=3355H, DX=4466H, SP=1FFCH3-9 BX=4154H, [2F246H]=6F30H3-10 BX=139EH3-11 SI=0180H, DS=2000H3-12(1) CL=F6H(2) [1E4F6H]=5678H(3) BX=9226H, AX=1E40H(4) SI=9226H, [SI]=[1E4F6]=0024H(5) AX=5678H, [09226H]=1234H3-13 AF=0, CF=1, OF=1, SF=0, ZF=03-14(1) MOV AX, 0 XOR AX, AX SUB AX, AX(2) MOV CL, 4ROL BL,CL (或ROR BL, CL)(3) 题中没规定N1和N2是8位还是16位数,现假定都8位数(也可假定是16位数,程序不一样)MOV AH, 0MOV AL, N1IDIV N2MOV M1, ALMOV M2, AH(4) 题目的意思即使BX的b4,b6,b11位清零AND BX, 0F7AFH(5) XOR AX, 4020H(6) TEST DX, 0201H(7) TEST CL, 1JNZ NEXTINC CL (或DEC CL)NEXT:3-15 假设题目的意思理解为编号从1开始(1) LEA BX, BLOCK+(6-1)*2MOV AX, [BX](2) LEA BX, BLOCKMOV AX, 10[BX](3) LEA BX, BLOCKMOV SI, 0MOV AX, 10[BX][SI](4) MOV AX, BLOCK+103-16(1) 结果存在地址是580H端口中,[580H]=60H(2) 结果存在地址是580H端口中,[580H]=8060H(即[580H]=60H, [581H]=80H)(3) 结果存在AL中,AL=[40H]=4FH(4) 结果存在AX中,AL=[40H]=4FH, AH=[41H](题目中没有给出端口41H中的值)(5) 结果存在地址是45H端口中,[45H]=60H(6) 结果存在地址是45H端口中,[45H]=8060H(即[45H]=60H,[46H]=80H)3-17 假定每小题中NUM1和NUM2都是和题中指定的操作数等长,即(1)中NUM1和NUM2为字变量,(2)(3)中为字节变量,(4)中为双字变量(1) MOV AX, NUM2ADD NUM1, AX(2) MOV CX, 4LEA BX, NUM1XOR AL, AL ; AL清零L1: ADD AL, [BX]INC BXLOOP L1MOV RES, AL(3) MOV CX, 8LEA BX, NUM1XOR AX, AXL1: ADD AL, [BX]JNC L2INC AHL2: INC BXLOOP L1MOV AX, WORD PTR RES(4) MOV AX, WORD PTR NUM1ADD WORD PTR NUM2, AXMOV AX, WORD PTR NUM1+1ADC WORD PTR NUM2+1, AX ; (MOV指令不影响CF标志位,否则不能这么写) 3-18(1) MOV CX, 8LEA BX, NUM1XOR AX, AXL1: ADD AL, [BX]DAAJNC L2INC AHL2: INC BXLOOP L1MOV AX, WORD PTR RES(2) MOV AL, NUM1SUB AL, NUM2DASMOV RES, AL差=90H, CF=13-19(1) MOV AL, NUM1MUL NUM2 ; 8位乘8位MOV WORD PTR RES, AX(2) MOV AX, NUM1IMUL NUM2 ;16位乘16位MOV WORD PTR RES, AXMOV WORD PTR RES+2, DX(3)MOV AL, NUM1MOV BL, 46CBWDIV BLMOV WORD PTR RES, AX(4) MOV AX, NUM1CWDIDIV NUM2 (或DIV NUM2)MOV WORD PTR RES, AXMOV WORD PTR RES+2, DX3-20(1)53乘以2MOV AL, 53SHL AL, 1结果106(2) -49乘以2MOV AL, -49 ; -49补码为CFHSHL AL, 1 ;AL=9EH, 真值即为-98结果-98除以2类似3-21(1) BX=009AH(2) BX=15CH(3) BX=8071H(4) BX=10F7H(5) BX=FF1CH3-22(1) DX=[20506]=0006H BX=0004H(2) SP=1FFEH, [SP]=CX=FFFEH(3) CX=BX=0004H(4) AX=8094H, CF=0(5) AL=[20508H]=87H(6) AL=94H+37H+1=CCH, CF=0, AL=32H(7) SI=9(8) DI=9(9) [DI]=[2050A]=AL=94H(10) AX=17C6H, DX=8094H(11) AH=84H, BL=4(12) IP=DX=17C6H3-23(1) 将存储器中以FIRST为起始地址连续10个字节复制到以SECOND为起始地址的地方(2) 将存储器中数据段中以偏移地址0404H为起始地址,连续80H个字节的空间清零3-24MOV BX, 5MUL BXMOV BX, 2DIV BX3-26 MOV BX, 0A80HMOV AL, 5XLAT3-27(1) IP=1256(2) IP=3280H(3) IP=2450H3-28 IP=009A, CS=2000, [SP]=8F, [SP+1]=3DH, [SP+2]=50H, [SP+3]=40H3-29CMP AL, 1JNZ LAB1CMP AL, 2JNZ LAB2CMP AL,4JNZ LAB3最后一个条件(若位0至位2都是0,则顺序执行),相当于没有,因为不管符不符合这个条件,程序都会按顺序执行。

《微机原理及应用》课后答案(黄冰 覃伟年 著)习题参考答案

《微机原理及应用》课后答案(黄冰 覃伟年 著)习题参考答案

《微机原理》习题参考答案第一章绪论1.2①[+65]10=01000001B [+65]补=[+65]原=01000001B②[+115]10=01110011B [+115]补=[+115]原=01110011B③[-65]10=11000001B [-65]补=10111111B[-115]10=11110011B [-115]补=10001101B方法:正数的原码、反码、补码相同负数的补码在原码的基础上除过符号外,先取反,再加1。

1.3①[+120]10=0000000001111000B [+120]补=[+120]原=000000001111000B②[-120]10=1000000001111000B [-120]补=1111111110001000B③[+230]10=0000000011100110B [+230]补=[+230]原=0000000011100110B④[-230]10=1000000011100110B [-230]补=1111111100011010B方法:与上题相同,只是扩展了位数,用16位表示1.4①55 (00110111)②89 (01011001)③-115 (11110011)④-7总结:知道补码,求原码(或数值)的方法:如果是正数,直接转换。

如果是负数用以下三种方法:①根据[[X]补]补=X 求得例如10001101 各位取反11110010 加一11110011转换-115②求补的逆运算例如:11111001 先减一11111000 各位取反10000111 转换-7③-(模+补码转换结果)例如:10001101转换-13模+补码转换结果128-13=115 加负号–1151.9本题问题不太明确例如:如果手边有手册或是知道产品的型号,就可从手册中查到微处理器的处理位数。

也可以根据系统总线得知。

因为系统总线是公共的数据通道,表现为数据传输位数和总线工作时钟频率。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《微机原理及应用》习题答案第一章⏹1.11 请完成下列数制转换:(1)将174.66D转换为对应的二进制和十六进制形式。

(2)将1.01011B转换为对应的十进制和十六进制形式。

(3)将F18A6.6H转换为对应的二进制和十进制形式。

答:174.66D=10101110.1010B=AE.AH1.01011B=2283.34375D=8EB.58HF18A6.6H=989350.375D⏹1.12 请写出与数据+37和-37对应的8位机器数原码、反码和补码,并分别用二进制和十六进制表示出来。

答:-37D=(10100101B)原=(11011010B)反=(11011011B)补⏹1.13 8位机器数46H,若作为无符号数和补码有符号数,其对应的真值各是什么?若作为BCD码和ASCII码,其对应的又是什么?答:无符号数46H=70,补码46H=+70 BCD码46H=46,ASCII码46H=“F”第二章●2.5什么是8088中的逻辑地址和物理地址?逻辑地址如何转换成物理地址?1MB最多能分成多少个逻辑段?请将如下逻辑地址用物理地址表达:(1)FFFFH:0H (2) 40H:17H (3) 2000H:4500H (4) B821H:4567H答:⑴FFFFH:0H = FFFF0H⑵40H:17H = 00417H⑶2000H:4500H = 24500H⑷B821H:4567H = BC777H●2.8已知DS=2000H,BX=0100H,SI=0002,存储单元[20100H]~[20103H]依次存放12H,34H,56H,78H,[21200H]~[21203H]依次存放2AH,4CH,87H,65H,说明下列每条指令执行完后AX寄存器的内容以及源操作数的寻址方式?答:⑴AX=1200H,立即数寻址;⑵AX=0100H,寄存器寻址;⑶AX=4C2AH,直接寻址;⑷AX=3412H,寄存器间接寻址;⑸AX=4C2AH,寄存器相对寻址;⑹AX=7865H,基址变址寻址;⑺AX=65B7H,基址变址相对寻址。

●2.9 说明下面各条指令的具体错误原因:(1)mov cx,dl (2)mov ip,ax (3)mov es,1234h (4)mov es,ds(5) mov al,300 (6)mov [sp],ax (7)mov ax,bx+di (8)mov 20h,ah答:⑴操作数类型不同;⑵不能手工修改IP;⑶不能将立即数直接MOV到段寄存器;⑷不能在段寄存器之间直接MOV数据;⑸300大于AL所能存放的数据的范围;⑹寄存器间接寻址只能用BX/BP/SI/DI之一;⑺MOV AX,[BX+DI];⑻目的操作数不能是立即数。

●2.10 已知数字0~9对应的格雷码依次为:18H,34H,05H,06H,09H,0AH,0CH,11H,12H,14H,它存在于以table为首地址(设为200H)的连续区域中。

请为如下程序段的每条指令加上注释,说明每条指令的功能和执行结果。

lea bx,tablemov al,8xlat答:lea bx,table ;bx=0200hmov al,8 ;al=08hxlat ;al=12h●2.11给出下列各条指令执行后的AL值,以及CF,ZF,SF,OF和PF的状态:mov al,89hadd al,aladd al,9dhcmp al,0bchsub al,aldec alinc al答:⑴al=89h⑵al=12h,CF=1,ZF=0,SF=0,OF=1,PF=1,AF=1⑶al=afh,CF=0,ZF=0,SF=1,OF=0,PF=1,AF=0⑷al=afh,CF=1,ZF=0,SF=1,OF=1,PF=1,AF=0⑸al=00h,CF=0,ZF=1,SF=0,OF=0,PF=1,AF=0⑹al=ffh,CF=0,ZF=0,SF=1,OF=0,PF=1,AF=1⑺al=00h,CF=0,ZF=1,SF=0,OF=0,PF=1,AF=1●2.12请分别用一条汇编语言指令完成如下功能:(1)把BX寄存器和DX寄存器的内容相加,结果存入DX寄存器。

(2)用寄存器BX和SI的基址变址寻址方式把存储器的一个字节与AL寄存器的内容相加并把结果送到AL中。

用BX和位移量0B2H的寄存器相对寻址方式把存储器中的一个字和CX寄存器的内容相加,并把结果送回存储器中。

(4)用位移量为0520H的直接寻址方式把存储器中的一个字与数3412H相加,并把结果送回该存储单元中。

(5)把数0A0H与AL寄存器的内容相加,并把结果送回AL中。

答:⑴add dx,bx;⑵add al,[bx+si];⑶add [bx+00b2h],cx⑷add word ptr [0520h],3412h⑸add al,0a0h●2.13设X,Y,Z,V均为16位带符号数,分别装在X,Y,Z,V存储器单元中,阅读如下程序段,得出它的运算公式,并说明运算结果存于何处。

imul ymov cx,axmox bx,dxmov ax,zcwdadd cx,axadc bx,dxsub cx,540abb bx,0mov ax,vcwdsub ax,cxabb dx,bxidiv x答:(V -( X * Y + Z -540 ) )/ X●2.14给出下列各条指令执行后的结果,以及状态标志CF、OF、SF、ZF、PF的状态。

mov ax,1470hand ax,axor ax,axxor ax,axnot axtest ax,0f0f0h答:⑴ax=1470h⑵ax=1470h,CF=0,ZF=0,SF=0,OF=0,PF=0⑶ax=1470h,CF=0,ZF=0,SF=0,OF=0,PF=0⑷ax=0000h,CF=0,ZF=0,SF=0,OF=1,PF=1⑸ax=0ffffh,CF=0,ZF=0,SF=0,OF=1,PF=1⑹ax=0ffffh,CF=0,ZF=0,SF=1,OF=0,PF=1●2.16假设DS=2000H,BX=1256H,TABLE的偏移地址是20A1H,物理地址232F7H处存放3280H,试问执行下列段内间接寻址的转移指令后,转移的有效地址是什么?答:⑴1256h;⑵3280h●2.17判断下列程序段跳转的条件(1)xor ax,lelehje equal(2)test al,10000001bjnz there(3)cmp cx,64hjb there答:⑴ax=1e1eh;⑵al=1******1b;⑶cx<64h●2.18如下是一段软件延时程序,请问NOP指令执行了多少次?xor cx,cxdelay: noploop delay●2.19 有一个首地址为array的20个字的数组,说明下列程序段的功能。

mov cx,20mov ax,0mov si,axsumlp: add ax,array[si]add si,2loop sumlpmov total,ax答:将array数组的20个字(无进位)累加,其和存入total单元。

●2.20按照下列要求,编写相应的程序段:(1)由string指示的起始地址的主存单元中存放一个字符串(长度大于6),把该字符串的第1个和第6个字符(字节量)传送给DX寄存器。

(2)有两个32位数值,按“小端方式”存放在两个缓冲区buffer1和buffer2中,编写程序段完成DX.A X←buffer1-buffer2功能。

(3)编写一个程序段,在DX高4位全为0时,使AX=0;否则,使AX=-1。

(4)把DX.AX中的双字右移4位。

(5)有一个100个字节元素的数组,其首地址为array,将每个元素减1(不考虑溢出或借位)存于原处。

答:⑴mov dl,stringmov dh,string+5⑵mov ax,word ptr buffer1sub ax,word ptr buffer2mov dx,word ptr buffer1+2sbb dx,buffer2+2⑶test dx,0f0hje t1mov ax,-1jmp donet1: mov ax,0done: …..⑷mov ax,1234hmov dx,5678hmov cx,4lp1:shr dx,1rcr ax,1loop lp1⑸lea bx,arraymov cx,100lp1:sub [bx],1inc bx2.25编写一个程序段:先提示输入数字“Input Number:0~9”,然后在下一行显示输入的数字,结束;如果不是键入了0~9数字,就提示错误“Error!”,继续等待输入数字。

答:.model small.stack 100h.datamessage db “Input Number : 0~9”,0dh,0ah,“$”error db “Error!”,0dh,0ah,“$”.code.startupmov dx,offset messagemov ah,09hint 21hbegin1: mov ah,01hint 21hcmp al,“0”jb err1 cmp al,“9”ja err1mov dl,almov ah,02hint 21h.exiterr1: mov offset errormov ah,09hint 21hjmp begin1end第三章3.11请设置一个数据段,按照如下要求定义变量:(1)my1b为字符串变量,表示字符串“Personal Computer”。

(2)my2b为用十进制数表示的字节变量,这个数的大小为20。

(3)my3b为用十六进制数表示的字节变量,这个数的大小为20。

(4)my4b为用二进制数表示的字节变量,这个数的大小为20。

(5)my5w为20个未赋值的字变量。

(6)my6c为100的符号常量。

(7)my7c为字符串常量,代替字符串“Personal Computer”。

答:my1b db “Personal Computer”my2b db 20my3b db 14hmy4b db 00010100bmy5w dw 20 dup(?)my6c equ 100my7c equ < Personal Computer >3.14设在某个程序中有如下片段,请写出每条传送指令执行后寄存器AX的内容:;数据段org 100hvarw dw 1234h,5678hvarb db 3,4vard dd 12345678hbuff db 10 dup(?)mess db ‘hello’;代码段mov ax,offset messmov ax,type buff+type mess+type vardmov ax,sizeof varw+sizeof buff+sizeof messmov ax,lengthof varw+lengthof vard答:offset varb = 0104hoffset mess = 0114htype buff = 1;type mess = 1;type vard = 4sizeof varw = 4;sizeof buff = 10;sizeof mess = 5lengthof varw =2;lengthof vard = 13.15假设myword是一个字变量,mybyte1和mybyte2是两个字节变量,指出下列语句中的具体错误原因。

相关文档
最新文档