《微机原理及其应用》
- 格式:ppt
- 大小:2.14 MB
- 文档页数:25
《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. 对专业人才培养目标支撑微计原理及应用是机械设计制造及其自动化专业本科生的一门必修课程,先修课包括《计算机组成原理》等,本课程以当今主流微处理器80X86为结合点,分析它的结构特点、操作原理、指令系统以及汇编语言设计的基本方法。
然后讲解80X86主要外围支援芯片的功能、结构、编程方法以及基本外部设备的接口技术。
在此基础上, 对键盘、LED数码显示器、AD与DA转换器等基本外部设备的原理与接口技术进行讨论。
此外对微计算机系统总线、其它微处理器结构也给以介绍。
2. 在课程体系中地位、作用微机原理及应用是机电工程专业的一门重要的本科专业课。
它是为培养满足材料类高等人才的需要而设置的。
微机原理及应用是一门研究微电子技术基本理论在微计算机中的应用和计算机软件和硬件结合应用问题的科学。
微机原理及应用课程对微处理器及微计算机内部结构的进行深入的研究,课程包括汇编语言的学习及应用。
还包括中断、接口、总线的使用技术的应用,如何使用软件编程控制硬件的正确方法。
微机原理及应用是机械设计制造及其自动化的一门核心课程。
电工电子微机原理及应用模拟电子、数字电子技术图1 微机原理及应用与已学相关课程的关系图2 微机原理及应用与机自专业其他专业基础课程和专业课程中的关系3. 对专业培养要求支撑通过课程学习学生应获得以下几方面毕业要求中的知识、能力与素质:(1).毕业要求3中的掌握工程基础知识和机械设计制造及其自动化相关的专业基础理论知识,了解材料机械设计制造及其自动化的理论前沿、发展前景和发展动态,包括新工艺、新方法、先进的成型设备和新的成型理论知识;(2).毕业要求5中的具有综合运用机械设计制造及其自动化的理论和技术手段设计系统和过程的能力。
二、教学内容及基本要求第一章绪论理解微处理器、微计算机、微计算机系统这三个名词术语的内涵;掌握微处理器、微计算机、微计算机系统概念术语;;了解微处理器技术的发展概况。
微机原理及应⽤第⼀章微处理器1.1 微处理器的基本功能和基本组成1.1.1 微处理器的基本功能微处理器是微机运算和控制处理部件,也是指挥微机各部件协调⼯作的控制中⼼。
主要的基本功能包括:指令控制功能,即控制程序顺序执⾏的功能操作控制功能,程序是由有序指令的集合⽽成,CPU执⾏程序就是要逐条执⾏程序中的指令,⼀条指令的执⾏往往由若⼲操作信号的组成来实现,CPU根据指令操作码和时序信号,产⽣各种操作控制信号,以便正确的选择数据通路,从⽽完成取指令和执⾏指令的控制。
操作控制器的组成类型分为两类:硬布线控制器,它是采⽤时序逻辑技术来实现的。
微程序控制器,它是采⽤存储逻辑来实现的。
1.1.2 微处理器的基本组成从早期的微处理器看,它主要包括运算器和控制器两⼤部分。
随着⼤规模集成电路技术的快速发展,⽬前CPU内部最基本的组成部分为三⼤部分,即运算器、控制器和⾼速缓冲存储器。
1. 运算器:AX,BX,CX,DX CPU中的寄存器ALU:算数逻辑部件C1,C2 :操作信号,相当于开关标志寄存器:算完以后的状态,⼤于0,⼩于0?越界问题数据不能两个都来⾃内存中。
2. ⾼速缓冲存储器由于CPU的速度远⼤于内存的速度,所以使⽤cache,将CPU所需要的数据提前从内存读⼊cache中,使得CPU在近期⼀段时间⽚段不需要访问内存,⽽是只需访问CPU内部的⾼速缓冲存储器,称其为访问CPU内部cache的 命中率 很⾼3. 控制器控制器最基本的部件由指令指针,指令寄存器,指令译码器及操作控制器组成。
为什么会CPU会顺序执⾏:指令指针中存放存储器地址,为了保证程序顺序执⾏,CPU必须⾃动记忆下⼀条指令存放在内存中的地址,所以指令指针⼜称为指令计数器,他有 ⾃动加⼀ 功能选择,循环结构时,操作系统会给指令指针赋值 (我们写代码过程中不能操作指令指针)1.1.3 冯·诺依曼思想五⼤模块:运算器,控制器,存储器,输⼊ /出设备计算机采⽤⼆进制在程序运⾏过程中,代码和数据存放在内存中存储器包括内存跟硬盘,⼀般说存储器单指内存为什么:cpu不能直接访问硬盘1.2 微处理器内部的寄存器1.2.1 8086 CPU 内部的寄存器组8086CPU包含数据线:16地址线:20最⼤存储空间:64KB2^16 byte =2^6KB 1个⼆进制位表⽰1位,即 1bit,8bit=1byte(字节)最多可接内存:1M2^20byte4个16位段寄存器CS,代码段寄存器DS,数据段寄存器 冯诺依曼思想第三句,主要是操作数据 importantSS,堆栈段寄存器ES,附加段寄存器代码在3楼:CS数据在6楼:DS数据寄存器AX:累加器,⽤于算数运算、逻辑运算以及在输⼊/输出指令中做数据寄存器使⽤等。
《微机原理及应用》习题答案第一章⏹1.11 请完成下列数制转换:(1)将174.66D转换为对应的二进制和十六进制形式。
(2)将100011101011.01011B转换为对应的十进制和十六进制形式。
(3)将F18A6.6H转换为对应的二进制和十进制形式。
答:174.66D=10101110.1010B=AE.AH100011101011.01011B=2283.34375D=8EB.58HF18A6.6H=989350.375D⏹1.12 请写出与数据+37和-37对应的8位机器数原码、反码和补码,并分别用二进制和十六进制表示出来。
答:-37D=(10100101B)原=(11011010B)反=(11011011B)补⏹1.13 8位机器数46H,若作为无符号数和补码有符号数,其对应的真值各是什么?若作为BCD码和ASC II码,其对应的又是什么?答:无符号数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]依次存放2A H,4CH,87H,65H,说明下列每条指令执行完后AX寄存器的内容以及源操作数的寻址方式?答:⑴ AX=1200H,立即数寻址;⑵ AX=0100H,寄存器寻址;⑶ AX=4C2AH,直接寻址;⑷ AX=3412H,寄存器间接寻址;⑸ AX=4C2AH,寄存器相对寻址;⑹ AX=7865H,基址变址寻址;⑺ AX=65B7H,基址变址相对寻址。