微机原理及应用第4章(3)

合集下载

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

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

《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,则顺序执行),相当于没有,因为不管符不符合这个条件,程序都会按顺序执行。

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

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

微机原理及应用(陈继红、徐晨)课后习题答案第三章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。

3.3答案:7DH。

(2)255(3)7248H。

(4)509013E2H。

3.4答案:240D0F0H。

128D80H。

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

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

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

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

1010101111001101B。

(3)123十进制数:291D;二进制数;000100100011B。

(4)FFFF十进制数:65535D;二进制数;1111111111111111B。

3.6分别用8位二进制数和16位二进制数写出下列十进制数的原码和补码。

(1)16(2)-16(3)+0(4)-0(5)127(6)-128(7)121(8)-9 答案:(1)16800010000(2)-16800010000(3)+0800000000(4)-0800000000(5)127801111111(6)-128810000000(7)1218:01111001;16位二进制数原码:0000000001111001补码:0000000001111001。

408《微机原理及应用》复习大纲

408《微机原理及应用》复习大纲

412《微机原理及应用》复习大纲课程名称微机原理及应用英文名称Micro Computer Principle and Application教学要求熟悉并掌握微型计算机系统的整体概念,理解硬软件间的辩证关系。

具体要掌握:CPU和基本接口的结构和工作原理;学会用汇编语言编程,重点放在如何根据具体要求来确定系统硬软件结构;合理选用存贮器和接口芯片;了解如何设计监控(管理)程序来统一管理系统硬软件资源的方法和技巧。

考试内容第一章:计算机中的数制和码制1数和数制数的位置表示法及各种进位制数;各种进位制数的换算方法;二进制数的运算方法2原码、补码、反码及其相应的运算法则原码;反码和补码;补码的求法;补码的运算;溢出判别;算术移位;移码3小数点问题定点法;浮点法4十进制数的二进制编码及ASCII码组合BCD码;非组合BCD码;ASCII码;奇偶校验码第二章;计算机基本软硬件知识与80486微处理器1计算机系统组成2存储器38086/8088微处理器内部结构*8086CPU内部结构、寄存器4工作模式简介:实地址模式和保护虚拟地址模式58086/8088的外部引脚介绍:数据总线、地址总线和控制总线第三章寻址方式及指令系统1寻址方式操作数寻址方式;程序转移地址的寻址方式2指令系统1)数据传送指令;累加器专用传送指令;地址传送指令;标志传送指令2)算术运算指令二进制加/减法指令;二进制乘/除法运算指令;符号位扩展指令;十进制(BCD)运算指令3)逻辑运算和移位指令逻辑运算指令;移位与循环移位指令4)串操作指令字符串操作指令;重复前缀指令5)控制转移类指令无条件与条件转移指令;循环转移指令;子程序调用与返回;中断和中断返回6)处理器控制类指令标志操作指令;外部同步指令;空操作指令3DEBUG命令简介第四章汇编语言程序设计1汇编语盲的基本概念计算机程序设计语言(机器语言、汇编语言、高级语言);汇编语言的语句格式(指令语句、伪指令语句);常数、标号、变量及表达式、伪指令2汇编程序的功能和汇编语言程序的运行汇编语言源程序的汇编、连接和装入运行;汇编过程;汇编语言与PC-DOS 的接口3汇编语言程序设计的基本方法汇编语言程序设计步骤;分支程序设计;循环程序设计;子程序设计;4宏汇编宏指令、宏定义和宏调用;宏嵌套;宏定义中的标号与变量;宏指令与子程序5多模块程序设计多模块的连接;模块间标识符的交叉访问6DOS功能调用7BIOS功能调用第五章半导体存贮器与存贮系统1概述存储器的分类;半导体存储器的结构与组成;`内存储器的性能指标2RAM、ROM典型芯片Intel 2114(1K×4)、HM6116(2K×8)、HM6264(8K×8);DRAM 2118(16K×1);UVEPROM 2764(8K×8);EEPROM Intel2864(8K×8)38086/8088CPU存储器的硬件组织地址/数据总线分离;地址空间组织4存储器的扩充5存储器扩充实例存储器扩充的步骤;存储器位的扩展;地址译码;存储器扩展举例第六章中断处理1概述中断的概念;中断处理过程;中断系统要解决的问题28086/8088的中断系统中断结构;内部中断;外部中断3中断优先级管理器 8259A PIC8259A内部结构与外部引脚;8259APIC编程;8259A在PC系统中的应用第七章输入/输出方法及常用的接口电路1概述时序配合;信号转换;数据缓冲;I/O电路代替CPU对外设的控制功能。

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

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

微机原理及应⽤习题库与答案微机原理及应⽤习题库与答案习题与练习题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。

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

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

李伯成《微机原理》习题第一章本章作业参考书目:①薛钧义主编《微型计算机原理与应用——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 对下列十进制数,用八位二进制数写出其原码、反码和补码:(正数的反码与原码相同,负数的反码除符号位之外其余各位按位取反。

微机原理与应用第四章

微机原理与应用第四章
8088/8086 CPU
输入/输出控制电路 算术逻辑单元ALU 寄存器组 执行单元EU (Execution Unit) 标志寄存器FR 暂存器
负责分析指令 和执行指令
8088/8086的内部结构图
通 用 寄 存 器
AX BX CX DX
AH AL BH BL CH CL DH DL SP BP SI DI
逻辑地址:程序中出现的地址,由段地址和段内偏移量组成

SI:源变址寄存器 ► DI:目标变址寄存器
► ►
变址寄存器常用于指令的间接寻址或 变址寻址。特别是在串操作指令中, 用SI存放源操作数的偏移地址,而用 DI存放目标操作数的偏移地址。
用于存放逻辑段的段基地址(逻辑段的概念后面
将要介绍)
CS:代码段寄存器
代码段用于存放指令代码
DS:数据段寄存器 ES:附加段寄存器
内 容 00000100B(4) 10000000B(128) 00010001B(17) …… 00001111B (15) ……
每个地 址空间 可以存 放8位二 进制数
8086计算机主存储器是按字节进行组织的, 两个相邻的字节被称为一个“字” 。 存放的信息若是以字节Byte(8位)为单位 的,将在存储器中按顺序排列存放,每个地址 单元存放一个字节,即每个字节占用一个地址; 若存放的数据为一个字Word(16位)时,则 每一个字占用两个地址相连的存储单元,其中 低字节(低8位)存放在低地址中,高字节(高 8位)存放在高地址中,并以低地址作为该字的 地址。 8086系统只能提供20根地址线来区分内存的 不同存储单元,因此8086系统可以连接的内存 最多只能包含220(1M)字节的存储单元。
8088
► 8086CPU采用并行工作方式

《微机原理及应用》复习精华

《微机原理及应用》复习精华
2. CISC:复杂指令集,指令代码不等长,指令数量多; RISC:精简指令集,指令少,指令码等长,寻址方式少,指令功能简单。 微处理器 CPU:包括算术逻辑部件 ALU、控制部件 CU、寄存器组 R 及内部总线。 微型计算机:以微处理器为核心,配以存储器(ROM 和 RAM)、I/O 接口及系统总线。 微型计算机系统:以微型计算机为核心,配以相应的外设、电源、辅助设备、软件等。
EPROM:可紫外线擦除的可编程 ROM
EEPROM:可电擦除的可编程 ROM
2.典型存储器芯片及容量
SRAM
EPROM
E 2 PROM
6264: 8K×8bit
2764: 8K×8bit
28C64: 8K×8bit
62128:16K×8bit
27128:16K×8bit
28C128:16K×8bit
2.8086 与 8088 主要区别: ①外部数据总线位数的差别:8086 是 16 位,8088 是 8 位; ②指令队列容量的差别:8086 指令队列可容纳 6 个字节,8088 只能容纳 4 个字节;
《微机原理及应用》复习精华 第 3 页
淮阴工学院
科学男孩 /kexuenanhai
______
______
连),WE是★★★(一般与 CPU 的WR直接相连),还有地址线 A..和数据线 D..(这
两者一般与 CPU 对应连接即可)。
③当还有 74LS373、Intel8282 等芯片时,一般将 CPU 的地址锁存允许信号
ALE 接至芯片的使能端,将 CPU 的 AD7~AD0 接至芯片的 I7~I0,将芯片的 O7~O0 接至存储器的 A7~A0 .
62256:32K×8bit
27256:32K×8bit

微机原理及应用参考答案

微机原理及应用参考答案

名师整理_ _進秀资源参考答案第一章计算机中的数制和码制第二章计算机概述一、填空题1.82. 23.10244.25.5、11001.1、00100101.0101B5.1000010B、42H、66H6.41.625、29.AH7.10001101B8.11001001、 110010109.-128 ~ +12710.系统软件、应用软件11.电子管、超大规模集成电路二、单选题1 . A 2. C 3. D4. C5. A6. C三、分析简答题1.8086 CPU的总线根据其中信息传送的类型可分为几种?哪几种?答:8086 CPU的总线根据其中信息传送的类型可分为三种种,分别是:数据总线、地址总线和控制总线2.写出-25的原码、反码、补码,并将补码转换成十六进制数(设机器字长为8位)。

答:X=-25=-11001BX 原码:10011001BX 反码:11100110BX 补码:11100111B = E7H3. 举例说明什么是机器数,什么是真值? 答:将符号数值化了的数称为机器数。

女口: -18=-10010B (真值);机器数为:10010010B第三章半导体存贮器一、填空题三、分析简答题1. 在对存储器芯片进行片选时,全译码方式、部分译码方式和线选方式各有何特点? 答:①全译码方式:存储器芯片中的每一个存储单元对应一个唯一的地址。

译码需要的器件多;② 部分译码方式:存储器芯片中的一个存储单元有多个地址。

译码简单;③ 线选:存储器芯片中的一个存储单元有多个地址。

地址有可能不连续。

不需要译码。

四、硬件接口设计题1.答:⑴1. ROM 、RAM2. 6个3.8、4__ 二'、单选题1.A 2.B 3. D 5.C6.C7.B4. B(2) 存储器类型为RAM 总容量为4KX 8地址范围:0# 2000H-27FFH1# 2800H-2FFFH2.答:(9分)(1)存储器类型:RAM该系统的存储器容量为:6K X 8位(或:6K字节)(2)1#芯片的地址范围:1000H ~ 17FFH2#芯片的地址范围: 0800H ~ 0FFFH3#芯片的地址范围: 0000H ~ 07FFH3.1) 1K X 42) 2K X 8 或 2KB3)地址分配范围第一组:A19~ A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0最小地址0 ~ 0 0 0 0 0 0 0 0 0 0 0 00000H~ 最大地址0 ~ 0 1 1 1 1 1 1 1 1 1 1 003FFH 第二组:0 ~ 1 0 0 0 0 0 0 0 0 0 0 00400H~0 ~ 1 1 1 1 1 1 1 1 1 1 1 007FFH第四章微型计算机及微处理器的结构和组成一、填空题1.BIU、EU、指令的译码和指令执行2.4、16、16、6、20名师整理_ _進秀资源3.8、164.1、2二、单选题1. B2. B三、分析简答题1.8086/8088微处理器内部有那些寄存器,它们的主要作用是什么?答:执行部件有 8 个 16 位寄存器,AX、BX、CX、DX、SP、BP、DI、SI。

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

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

《微机原理》习题参考答案第一章绪论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. 微机硬件系统主要由CPU、(存储器)、(总线)、(输入输出接口)和输入输出设备组成。

2. 冯·诺依曼计算机的核心原理是(存储程序原理)3. 完成下列数制的转换1)10100110B=( 166 )D=( A6H )H2)223.25 =( 11011111.01 )B=( DF.4 )H3)1011011.101B=( 5B.A )H=(1001 0001.01100010 0101 )BCD4. 已知[X]补5. 已知A=10101111,B=01010000,则A∧B的结果为( 00000000 ) B=86H,则X的十进制表示形式为( -122 )6. -29H的8位二进制反码是(11010110 )B7.字符4的ASCII码=( 34 )H二、简答题1.冯.诺依曼计算机的结构是怎样的,主要特点有哪些?解:将计算机设计为由运算器、控制器、存储器、输入设备和输出设备等5个部分组成,所有的执行都以运算器为核心,采用存储程序工作原理。

2. 已知X=-1101001B,Y=-1010110B,用补码方法求X-Y=?解:[X-Y]补=[X+(-Y)]补= [X]补+[-Y] [X]补原=11101001B [X]补 [-Y]=10010111B原=01010110B=[-Y] [X-Y]补补= [X]补+[-Y]补X-Y=[[X-Y]=11101101B补]补=10010011=-0010011=-193. 写出下列真值对应的原码和补码的形式:1)X=-1110011B2)X=-713)X=+1001001B解:1)[X]原码=11110011B , [X]补码=10001101B2)[X]原码=11000111B, [X]补码=10111001B3)[X]原码=01001001, [X] 补码=01001001B=?4. 已知X和Y的真值,求[X+Y]补1)X=-1110111B Y=+1011010B2)X=56 Y=-215. 若与门的输入端A、B、C的状态分别为1、0、1,则该与门的输出端状态为?若将这3位信号连接到或门,那么或门的输出又是什么状态?解:由与和或的逻辑关系知,若“与”门的输入端有一位为“0”,则输出为“0”;若“或”门的输入端有一位为“1”,则输出为“1”。

(完整word版)《微机原理及应用》习题答案

(完整word版)《微机原理及应用》习题答案

(完整word版)《微机原理及应用》习题答案《微机原理及应用》习题答案教材:《80X86/Pentium微型计算机原理及应用》答案第一章计算机基础1-3(1)01101110 真值=110(2)10001101 真值=-131-4(1)+010111[+010111]原=[+010111]反=[+010111]补=00010111 (2) +101011[+101011]原=[+101011]反=[+101011]补=00101011 (3) –101000[-101000]原=10101000 [-101000]反=11010111 [-101000]补=11011000(4) -111111[-111111]原=10111111 [-111111]反=11000000 [-111111]补=110000011-6(1) [x1+y1]补=[x1]补+ [y1]补=00010100+00100001=00110101(2)[x2-y2]补=[x2]补+ [-y2]补=11101100+00100001=000011011-7 (1)85+60解:[-85]补=10101011 [60]补=00111100[-85]补+[60]补=10101011+00111100=11100111 (11100111)补=10011001 真值=-25CS=0,CP=0, CS⊕CP=0 无溢出(4)-85-60[-85]补=10101011 [-60]补=11000100[-85]补+[-60]补=10101011+11000100=101101111 CS=1, CP=0 CS⊕CP=1 有溢出1-8(1) [x]补+ [y]补=01001010+01100001=10101011 CS=0, CP=1 CS⊕CP=1 有溢出(2) [x]补- [y]补=[x]补+ [-y]补=01001010- 01100001=01001010+10101010=100010110CS=1, CP=1 CS⊕CP=0 无溢出1-9(1) (127)10=(000100100111)BCD(2) (74)H=(116)10=(000100010110)BCD1-10(1) 41H 代表A(2) 72H 代表r(3) 65H 代表e(4) 20H 代表SP1-14(1) 69.57(69.57)10=(1000101.100)B=0.1000101100 X 27=0.1000101100 X 2+111浮点规格数为011101000101(2)-38.405(-38.405)10=(-100110.011)B-100110.011= -0.100110011 x 26 = - 0.100110011 x 2110浮点规格数为011011001100(3) - 0.3125(-0.3125)10=(-0.0101)2=(-0.101)2 x 2-001浮点规格数为1111110100001.+0.008342.(+0.00834)10=(0.000000100010001)2=(0.100010001)2 x 2-1103.浮点规格数为1010010001004.1-155.(1) (69.57)10=(1000101.10010001111010111)26. =(1.00010110010001111010111)2 x 21107. p=6+127=133=(10000101)28.单精度浮点数为010000101000101100100011110101119.(2)(-38.405)10=(-100110.011001111010111000)210. = - (1.00110011001111010111000)2 x 210111. p=5+127=132=(10000100)212.单精度浮点数为1100001000011001100111101011100013.(3) (-0.3125)10=(-0.0101)2=(-1.01)2 x 2-1014. p=-2+127=125=(1111101)215.单精度浮点数为10111110101000000000000000000000第二章 80X86/Pentium 微处理器2-3IO/M DT/R DEN RD WR读存储器 0 0 0 0 1写存储器 0 1 0 1 02-17PA=CS x 16+IP IP的范围为0000H~FFFFH 而CS为A000H因此PA的范围即现行代码段可寻址的存储空间范围为A0000H~AFFFFH2-201234ABCDH=00010010001101001010101111001101 BPA=SS x 16+SP=A0000H+0100H=A0100H栈顶SP=0100H-4=00FCH11001101 A00FCH101010110011010000010010 A0100F2-21(1) 1278H+3469H=0001 0010 0111 1000+0011 0100 0110 1001=0100 0110 1110 0001SF=0 ZF=0 AF=1 PF=1 CF=0 OF=0(2) 54E3H-27A0H=0101 0100 1110 0011+1101 1000 0110 0000=1 0010 1101 0100 0011SF=0 ZF=0 AF=1 PF=0 CF=0 OF=0当进行16位或8位加或减运算时,若最高位产生进位或借位时,将CF置1,否则为0,当进行带符号数补码运算时,运算结果超出了机器所能表示的数值范围,就产生溢出,将OF置1,否则OF置0,即OF用来表示有符号数运算的溢出,而CF则用来表示无符号数运算的溢出。

微机原理及应用(吴宁) 习题答案chapter3

微机原理及应用(吴宁) 习题答案chapter3

3-4(1) EA=D=7237H(2) EA=BX+D=D5B4H(3) EA=BX=637DH3-5(1)源:立即寻址目标:寄存器寻址(2)源:基址寻址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)源:寄存器寻址3-6(1)寄存器寻址(2)基址加变址寻址(3)基址加比例变址寻址(4)比例变址寻址3-7(1)错源操作数寻址的两个寄存器均为基址寄存器(2)错两个操作数不可同时为存储器操作数(3)错立即数不可直接传递给段寄存器(4)错CS不可作为目标操作数(5)错立即数不可做目标操作数(6)对(7)错两个段寄存器不可直接传送(8)错移位次数大于1,应放入CL中(9)错NOT指令的操作数只有一个(10)对(11)错PUSH指令的操作数不可为立即数(12)错AL应作为目标操作数;端口地址大于FFH, 应放入DX (13)错LEA指令的源操作数必须为存储器操作数(14)错源操作数寻址方式错3-8(1)A X=3355H SP=1FFEH(2)A X=3355H DX=4466H SP=1FFEH3-9BX=4154H [2F246H]=6F30H3-12(1)C L=F6H(2)[1E4F6H]=5678H(3)B X=0056H AX=1E40H(4)S I=00F6H [SI]=0024H(5)A X=5678H [09226H]=1234H3-14(2) MOV CL , 4ROL BL, CL(4) AND BX , 0F7AFH(6) TEST DX, 0201H3-16(2)端口(580H)=60H (581H)=80H(4) 端口(41H)(40H)的内容送入AX(6) AX输出到端口PORT2 (45H)=60H,(46H)=80H3-18(1) MOV CX, 8 ;循环次数LEA SI, NUM1 ;源数据首地址LEA DI, RES ;结果存放首地址XOR AX, AX ;将CF和AX清零GO; ADD AL, [SI]DAAADC AH, 0INC SILOOP GOMOV [DI], ALMOV AL, AHDAAMOV [DI+1], AL(2) 略3-22(1)D X=0006H BX=0004H(2)S P=1FFEH [SP]=FEH(3)C X=0004H BX=0004H(4)A X=8094H CF=0(5)A L=87H(6)A L=CCH CF=0 AL=32H(7)S I=0009H(8)D I=0009H(9)[DI]=94H(10)AX=17C6H DX=8094H(11)AH=84H BL=04H(12)IP=17C6H3-23(1)将源串FIRST的10个字节内容传送到目标串SECOND (2)将起始地址为0404H的目标串的80H个字单元清零3-26MOV BX, 0A80HMOV AL, 5XLAT3-27(1)I P=1256H(2)I P=3280H(3)I P=2450H3-28IP=009AH CS=2000H SP=F178H[SP]=8FH [SP+1]=3DH [SP+2]=50H [SP+3]=40H 3-29CMP AL, 01HJZ LAB1CMP AL, 02HJZ LAB2CMP AL, 04HJZ LAB3TEST AL, 07HJNZ LAB4……LAB1:LAB2:LAB3:LAB4:。

微机原理 单片机 实验4 定时计数器应用

微机原理  单片机 实验4 定时计数器应用

MOV TH0,# H MOV TL0,# H SETB ET0 SETB EA SETB ET1 MOV TH1,# H MOV TL1,# H SETB TR0 SETB TR1 SJMP $ DVT0 :MOV TH0,# H MOV TL0,# H CPL P1.7 RETI DVT1: MOV TH1,# H MOV TL1,# H CPL P1.6 RETI END
mov mov mov setb ajmp int_timer0: mov mov djnz mov djnz mov cpl l1: reti end
ie,#82h 30h,#10 31h,#6 tr0 $
;设置中断允许寄存器
;30H和31H是两个软件计数器。 ;启动定时 ;原地踏步 ;定时器0中断服务程序。 th0,#high (65536-50000) tl0,#low(65536-50000) ;重设50MS定时。 30h,l1 30h,#10 31h,l1 31h,#6 ;软件计数 p1.1 ;10*6*50MS=3000MS时间到,P1.1取反 ;中断返回
实验四 定时计数器应用
一、实验目的:
1、单片机系统中,可以用软件或硬件定时,当定时时 间较长,定时准确率要求较高时,应采用硬件定时。 MCS—51系列单片机中有2个16位的可编程定时/计 数器T0和T1,通过本实验要求掌握T0、T1的初始化 编程和应用。 2、熟悉XLISP系列 单片机综合仿真试验仪的组成和 使用方法。学会应用XLISP仿真试验和keil-uvision2集 成调试软件进行仿真实验。掌握仿真实验的步骤并能 得到正确的实验结果。
Байду номын сангаас
4、思考题: P1口接8个LED灯循环点亮(间隔1s),P3.2接键盘, 按下后实现中断,使全部LED灯闪烁(间隔0.5s)5次 后继续循环点亮。 间隔时间(1s和0.5s)用定时计数器定时实现。

微机原理及应用参考答案

微机原理及应用参考答案

参考答案第一章计算机中的数制和码制第二章计算机概述一、填空题1.82. 23.10244.25.5、11001.1、00100101.0101B5.1000010B、42H、66H6.41.625、29.AH7.10001101B8.11001001、110010109.-128 ~ +12710.系统软件、应用软件11.电子管、超大规模集成电路二、单选题1. A 2. C 3. D4. C 5. A 6. C三、分析简答题1.8086 CPU的总线根据其中信息传送的类型可分为几种?哪几种?答:8086 CPU的总线根据其中信息传送的类型可分为三种种,分别是:数据总线、地址总线和控制总线2.写出-25的原码、反码、补码,并将补码转换成十六进制数(设机器字长为8位)。

答:X=-25=-11001BX原码:10011001BX反码:11100110BX补码:11100111B = E7H3.举例说明什么是机器数,什么是真值?答:将符号数值化了的数称为机器数。

如:-18=-10010B(真值);机器数为:10010010B第三章半导体存贮器一、填空题1.ROM、RAM2.6个3.8、4二、单选题1. A 2. B 3. D 4. B5. C 6. C 7. B三、分析简答题1.在对存储器芯片进行片选时,全译码方式、部分译码方式和线选方式各有何特点?答:①全译码方式:存储器芯片中的每一个存储单元对应一个唯一的地址。

译码需要的器件多;②部分译码方式:存储器芯片中的一个存储单元有多个地址。

译码简单;③线选:存储器芯片中的一个存储单元有多个地址。

地址有可能不连续。

不需要译码。

四、硬件接口设计题1.答:(1)(2) 存储器类型为RAM 总容量为4K×8地址范围: 0#2000H-27FFH1# 2800H-2FFFH2.答:(9分)(1)存储器类型:RAM该系统的存储器容量为:6K×8位(或:6K字节)(2)1#芯片的地址范围:1000H ~ 17FFH2#芯片的地址范围:0800H ~ 0FFFH3#芯片的地址范围:0000H ~ 07FFH3.1)1K×42)2K×8或2KB3)地址分配范围第一组:A19~ A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0最小地址0 ~ 0 0 0 0 0 0 0 0 0 0 0 00000H~ 最大地址0 ~ 0 1 1 1 1 1 1 1 1 1 1 003FFH 第二组:0 ~ 1 0 0 0 0 0 0 0 0 0 0 00400H~0 ~ 1 1 1 1 1 1 1 1 1 1 1 007FFH第四章微型计算机及微处理器的结构和组成一、填空题1.BIU、EU、指令的译码和指令执行2.4、16、16、6、203.8、164.1、2二、单选题1. B 2. B三、分析简答题1.8086/8088微处理器内部有那些寄存器,它们的主要作用是什么?答:执行部件有8个16位寄存器,AX、BX、CX、DX、SP、BP、DI、SI。

微机原理及应用(吴宁) 习题答案chapter4

微机原理及应用(吴宁) 习题答案chapter4

V AR1 Array V AR2V AR3V AR4V AR54-3(1) DA TA1 DB 86H, 27H, 23H, 00H, 24H, 1AH(2) DA TA2 DW 0B430H, 1062H(3) DA TA3 DB 4 DUP(20H), 20,0, 6 DUP(1,2)4-4(1)V AR1的偏移地址是30H,V AR2的偏移地址是3AH(2)CNT=16(3)02HSRGMOV MACRO DEST, SOURCE,LENLEA SI, SOURCELEA DI, DESTMOV CX, LENCLDREP MOVS DEST, SOURCEENDM4-8(1) 错源操作数和目标操作数长度不匹配(2)对(3)错两个存储器操作数之间不可直接传送(4)错CS不可作为MOV指令的目标操作数(5)对(6)错没有[SI][DI]的寻址方式(7)错[BX-SI]不是正确的寻址方式(8)错操作数没指明类型(9)错立即数不可作为MOV指令的目标操作数(10)错[8-BX]不是正确的寻址方式4-9BX:数组ARRA Y的首地址CX:数组ARRA Y的元素个数——100SI:数组ARRA Y的元素类型值——24-10X DB ××××H,××××HY DB ××××H,××××HZ DB ××××H,××××H…MOV AX, WORD PTR XADD AX, WORD PTR YMOV WORD PTR Z, AXMOV AX, WORD PTR X+2ADC AX, WORD PTR Y+2MOV WORD PTR Z+2, AX4-12DA TA SEGMENTBASE DW P0, P1, ……,P9DA TA ENDSCODE SEGMENT…MOV AH, 01H ; 从键盘输入一个字符,其ASC码值在AL中INT 21HCMP AL, ‘A’; 判别字符是否位于‘A’到‘J’之间JB EXITCMP AL, ‘J’JA EXITSUB AL, ‘A’;在正确范围之内,根据表内地址分支MOV BL, ALMOV BH, 0SHL BX, 1JMP BASE[BX]P1:P2:…P9:EXIT: MOV AH, 4CHINT 21H….4-14略与课堂补充例题类似,注意其高位在前(处理上相应的做点调整)4-16略与P173例2类似4-17DA TA SEGMENTDA TA_W DW ××××H,××××H,…,××××HCOUNT DB ($-DA TA_W)/2COUT1 DB ? ;正数个数COUT2 DB ? ;负数个数COUT3 DB ? ;零的个数DA TA ENDSCODE SEGMENT…LEA SI, DA TA_WMOV CX, COUNTNEXT: CMP WORD PTR [SI], 0JGE AAINC COUT2JMP CCAA: JE BBINC COUT1JMP CCBB: INC COUT3CC: INC SIINC SILOOP NEXT…4-18略4-22LEA SI, STRINGMOV CX, 80MOV DL, -1DEC SINEXT: INC SIINC DLCMP BYTE PTR [SI], ‘‘LOOPNZ NEXTJZ EXITMOV DL, -1EXIT: MOV CL, DL…。

微机原理及应用课后答案

微机原理及应用课后答案

第一章1-1.微处理器、微型计算机和微型计算机系统三者之间有什么不同?【解】微处理器(CPU),由运算器和控制器组成。

运算器完成算术运算和逻辑运算,控制器分析命令并指挥协调各部件统一行动完成命令规定的各种动作或操作。

微型计算机由运算器、控制器、存储器、输入设备、输出设备五大部分组成。

微型计算机系统包括微型计算机硬件和软件。

1-4.说明位、字节、字长的概念及它们之间的关系。

【解】(1) 位(bit)。

位是计算机所能表示的最基本最小的数据单位。

它只能有两种状态“0”和“1”,即二进制位。

(2) 字(Word)。

计算机中作为一个整体参与运算、处理和传送的一串二进制数,是计算机中信息的基本单位。

(3) 字长(Word Length)。

计算机中每个字所包含的二进制位数称为字长。

它们之间的关系:字由位构成,字长指每个字所包含的位的个数。

1-5.32位机和准32位机区别32位机指该机的数据总线宽度为32位,准32位机为芯片内部数据总线宽度是32位,片外则为16位的cpu第二章2-1 微型计算机由哪几部分组成,各部分的功能是什么?【解】微型计算机由运算器、控制器、存储器、输入设备、输出设备五大部分组成。

运算器完成算术运算和逻辑运算;控制器分析命令并指挥协调各部件统一行动完成命令规定的各种动作或操作;存储器存放原始数据、中间结果和最终结果以及程序;输入设备、输出设备与外界交换信息。

2-2.CPU在内部结构上由哪几部分组成,CPU应具备什么功能?【解】微处理器(CPU)由运算器和控制器组成。

CPU应具备的功能:对数据进行处理并对处理过程进行控制。

2-3 4,6,8,1,9,7,2,5,10,32-7:第16字为70A0:DE05 末物理地址为70A00+DE05=7E8052-8.①通用数据寄存器。

四个通用数据寄存器AX、BX、CX、DX均可用作16位寄存器也可用作8位寄存器。

用作8位寄存器时分别记为AH、AL、BH、BL、CH、CL、DH、DL。

微机原理及应用习题集

微机原理及应用习题集

第一章作业1、计算机是由哪几部分组成的?阐述每部分的作用。

2、画图说明计算机执行指令ADD AL ,06H 的工作过程。

3、以十六进制形式,给出下列十进制数对应的8位二进制补码表示。

(1)46 (2)-46 (3)-128 (4)1274、给出下列十进制数对应的压缩和非压缩BCD码形式。

(1)58 (2)16245、完成下列十六进制数的运算(1)8A+39 (2)1234+A6 (3)ABCD-E5 (4)7AB-F06、下列各数均为十六进制表示的8位二进制数,请说明它们分别被看作是无符号数或用补码表示的带符号数时,它们所表示的十进制数是什么?(1)FF (2)6A (3)80 (4)74 (5)327、请写出下列字符串的ASCII码(1)this is a number 3579(2)I am a student8、写出(+120)10和(-120)10的补码。

9、已知[X]补=01001000,[Y]补=11001000,分别求其真值。

10、下列各数均为十进制数,请用8位二进制补码计算下列各题,并分别说明其运算结果是否溢出。

(1)85+(-76)(2)85-76 (3)85-(-76)(4)(-85)-76 (5)(-85)-(-76)(6)(-85)+76第二章作业1、8086CPU有哪些功能部件组成?2、总线接口单元BIU有哪些功能?8086的总线接口部件有那几部分组成?3、指令执行单元EU有哪些功能?8086的EU有那几部分组成?在执行程序过程中它们是如何相互配合工作的?4、简述CPU执行程序的过程。

5、在执行指令期间,EU能直接访问存储器吗?为什么?6、8086/8088CPU中,有哪些通用寄存器和专用寄存器?说明它们的作用?7、8086/8088系统中,存储器为什么要分段?一个段最大为多少字节?最小为多少字节?8、在8086/8088CPU中,物理地址和逻辑地址是指什么?已知逻辑地址为1F00:38A0H,如何计算出其对应的物理地址?9、已知存储器物理地址为78A00H,计算它所对应的逻辑地址。

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

20
(1) 有效地址传送指令LEA
• 格式 LEA REG, (16位通用Reg) SRC (mem操作数)
• 功能 把源操作数的有效地址EA送到目的操作数中。 • 使用规则
源操作数必须是存储器(mem)操作数;
目的操作数必须是16位通用寄存器; 不影响标志位。
21
• 例 :分析指令运行结果 • (a) LEA AX,[2728H] • (b) LEA BX,[BP+SI] • (c) LEA SP,[0482H] • (d) LEA BX,[BX+DI+2000H] – 指令执行前:BX = 4000H,DI = 0100H – 指令执行后:BX =
• •
LEA AX,ES:[DI+10] MOV AX,ES:[DI+10]
19
2. 指针传送指令
• (1) 有效地址传送指令
– LEA (Load Effective Address)
• (2) 地址指针传送指令
– ① LDS (Load pointer into DS) – ② LES (Load pointer into ES)
Hex_table+0 Hex_table+1 Hex_table+2 Hex_table+8 Hex_table+9
;(BX)←表首偏移地址 ;(AL)←8 ;查表转换
30H 31H 32H 38H 39H
‘0’ ‘1’ ‘2’ ‘8’ ‘9’
查表后(AL)= 38H ?
15
例:比较下面两指令的不同
pop ax pop ebx
SP
+2
Word 1
Stack POP
10
例:现场的保护和恢复
PUSH AX PUSH BX PUSH DS ... POP DS POP BX POP AX
;进入子程序后
;返回主程序前
11
3. 交换指令XCHG(exchange) 例:
MOV AX,1234H MOV BX,5678H XCHG AX,BX XCHG AH,AL
7
2、堆栈操作
• “先进后出FILO”存取的存储区域,只有一 个数据出入口,即当前栈顶(不断变化) • 两种基本操作
–数据压进堆栈PUSH –数据弹出堆栈操作POP
Word Word Word Word Word 5 4 3 2 1
• SS指向堆栈段的起始位置 • SP指定栈顶
–数据进入堆栈,SP逐渐减小 –数据依次弹出、SP逐渐增大
4000 + 0100 + 2000H = 6100H
22
例:地址指针的传送
mov word ptr [3060h],0100h
mov word ptr [3062h],1450h
Lds si,[3060h] ;ds=1450h,si=0100h Les di,[3060h] ;es=1450h,di=0100h
26
例:置位单步标志
pushf pop ax or ah,01h
;保存全部标志到堆栈 ;从堆栈中取出全部标志 ;设置D8=TF=1, ;ah其他位不变 push ax ;将ax压入堆栈 popf ;将堆栈内容取到标志 ;寄存器,即 FLAGS←AX
27
三、输入/输出传送指令
IN AL/AX,i8/DX
29
例:将字节数据80H送到3fcH端口
mov dx,3fch mov al,80h out dx,al
30
练习、判断对错,并说明原因:
• • • • • • • • • •
(1) MOV (2) MOV (3) MOV (4) MOV (5) MOV (6) MOV (7) MOV (8) XCHG (9) XCHG (10) OUT
LAHF和SAHF指令仅 影响5个标志位SF、ZF、 AF、PF、CF!
25
3、 标志位传送指令 PUSHF ;SP←SP-2 ;SS:[SP]←FLAGS
PUSHF和POPF指令常用 在子程序或中断处理程序 的首尾,以保存主程序标 志和恢复主程序标志。也 常用来修改TF状态。
POPF ;FLAGS←SS:[SP] ;SP←SP+2
4.4 8086/8088指令系统
• Intel 8086指令系统共有133条基本指令,可 分成以下 6 类:
① 数据传送类指令 ② 算术运算类指令 ③ 位操作类指令 ④ 串操作类指令 ⑤ 控制转移类指令 ⑥ 处理机控制类指令
1
4.4.1 数据传送类指令
• 最基本、最重要、最常用的一类操作。 • 可实现下列数据传送功能
xchg ax,[2000h]
xchg al,[2000h]
xchg bx,[bp+14h]
• 不能在存储单元之间直接交换 • 立即数或段寄存器不能作为操作数
12
4. 换码指令XLAT(translate)
执行过程: ① BX+AL; 例 : MOV BX,offset TABLE ② 用DS为段基址,BX+AL为偏移量获得 MOV AL,3H ; 20位物理地址; (AL)=9 XLAT BX ③ 把该单元的内容传送至AL。 M …………… TABLE 0 1 TABLE: DB 0 +3 4 DB 1 9 DB 4 16 25 DB 9
AH,BX [SI],[BX] AX,[SI][DI] AX,[BX][BP] BX,ES:[AX] BYTE PTR[BX],1000 CS,AX AL,40H ES,AX 160H,AL
31
4.4.2 算术运算类指令
• 实现二进制/BCD码数据的四则运算
– 1、加法运算: ADD/ADC/INC
LEA BX,BUFFER
093A0H ………..
数据段
MOV BX,BUFFER 存储单元内容如右图所示。 若:DS=093AH,BUFFER
差23H
093C3H
物理地址 093C3H 则 MOV BX,BUFFER ;
0045H BX= ? LEA BX,BUFFER ;
BUFFER
45H 00H
;AL/AX←I/O端口
OUT i8/DX,AL/AX
;I/O端口← AL/AX
①直接寻址 ② 间接寻址
PORT<=255
DX=0-0FFFFH
28
例:从端口20H和21H输入一个字量数据
解a:用直接寻址字节输入指令 IN AL,21H MOV AH,AL IN AL,20H 解b:用直接寻址字输入指令 IN AX,20H 解c:用DX间接寻址字输入指令 MOV DX,20H IN AX,DX
–展开: IN/OUT
4
指令操作数符号说明
符号 OPRD
OPRD1,OPRD2
意义 操作数
在多操作数指令中,OPRD1为目标操作数,OPRD2源操作数
reg Sreg(Seg)
通用寄存器,长度可以是8位或16位。 段寄存器
reg8
reg16 mem mem8 mem16 imm
8位通用寄存器
16位通用寄存器 存储器,长度可以是8位或16位。 8位存储器 16位存储器 立即数,长度可以是8位或16位。
DB 16 DB 25
13
• 例:设表首的偏移地址为2000H,要查找表内第4号 单元 (从0号算起)的内容并送回AL,则程序段如下: MOV BX,2000H MOV AL,04H XLAT DS16
TABLE 表格的首地址(一般 为符号地址),在这 (表首)TABLE 里只是为了提高程 序的可读性,并不
Stack PUSH POP
8
入栈指令PUSH
• 先将SP减小作为当前栈顶 • 然后将源操作数(立即数、通用寄存器和段寄 存器内容或存储器操作数)传送到当前栈顶 • 以字或双字为单位操作 push ax push ebx
Word 1
SP
-2
Stack PUSH
9
出栈指令POP
• 先将栈顶数据传送到目的操作数(通用寄 存器、存储单元或段寄存器) • 然后SP增加作为当前栈顶 • 以字或双字为单位操作
BX= 0023H = 093C3H-093A0H
16
• 例:判断下列指令的正确性
PUSH POP PUSH POP PUSH POP
AH BL CS CS 1234H AL
× × √ × × ×
不能按字节操作 不能按字节操作
不能弹出数据到CS 不能对立即数操作 不能按字节操作
17
二、 目标地址传送指令
– 重点掌握: ADD/ADC/SUB/SBB/INC/DEC/CMP – 一般了解: CBW/CWD – 认真理解: DAA/DAS/AAA/AAS/AAM/AAD
33
标志?
– 比较熟悉: NEG/MUL/IMUL/DIV/IDIV
一、加 法
1、加法指令ADD
• 目的操作数加上源操作数,和送到目的操作数 ADD dest,src ;dest←dest+src • 按照定义影响6个状态标志位
mov ax,4652h add ax,0f0f0h CF=1 mov dx,0234h adc dx,0f0f0h CF=0
;ax=4652h ;ax=3742h,
;dx=0234h ;dx=f325h,
35
3、增量指令INC(increment)
• 只有一个操作数:寄存器或存储单元 • 对操作数加1(增量)再将结果返回原处 INC reg/mem ; reg/mem←reg/mem+1 • 用于计数器和地址指针的调整 • 不影响进位CF标志,但影响其他状态标志位
23
• 例: LES DI,[BX] 指令执行前:
相关文档
最新文档