微机原理与接口技术-chapter3.ppt
上传人:qw****27 上传时间:2024-09-12 格式:PPT 页数:152 大小:3.9MB 金币:15 举报 版权申诉
预览加载中,请您耐心等待几秒...

微机原理与接口技术-chapter3.ppt

微机原理与接口技术-chapter3.ppt

预览

免费试读已结束,剩余 142 页请下载文档后查看

15 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

微机原理与接口技术主要内容基本概念RISC(精简指令集计算机)和CISC(复杂指令集计算机)是当前CPU的两种架构。它们的区别在于不同的CPU设计理念和方法。早期的CPU全部是CISC架构,它的设计目的是要用最少的机器语言指令来完成所需的计算任务。比如对于乘法运算,在CISC架构的CPU上,您可能需要这样一条指令:MULADDRA,ADDRB就可以将ADDRA和ADDRB中的数相乘并将结果储存在ADDRA中。将ADDRA,ADDRB中的数据读入寄存器,相乘和将结果写回内存的操作全部依赖于CPU中设计的逻辑来实现。这种架构会增加CPU结构的复杂性和对CPU工艺的要求,但对于编译器的开发十分有利。比如上面的例子,C程序中的a*=b就可以直接编译为一条乘法指令。今天只有Intel及其兼容CPU还在使用CISC架构RISC架构要求软件来指定各个操作步骤。上面的例子如果要在RISC架构上实现,将ADDRA,ADDRB中的数据读入寄存器,相乘和将结果写回内存的操作都必须由软件来实现,比如:MOVA,ADDRA;MOVB,ADDRB;MULA,B;STRADDRA,A。这种架构可以降低CPU的复杂性以及允许在同样的工艺水平下生产出功能更强大的CPU,但对于编译器的设计有更高的要求。指令的组成指令的助记符格式指令的操作码和操作数寻址与寻址方式——操作数寻址操作数的来源立即数寻址方式寄存器寻址方式存储器寻址方式(1)直接寻址方式(2)寄存器间接寻址方式(3)寄存器相对寻址方式(4)基址变址寻址方式(5)相对基址变址寻址方式相对寻址方式中的偏移量IO端口寻址寻址与寻址方式——转移地址寻址举例举例举例8086、8088指令系统数据传送、算术运算、逻辑运算和移位、串操作、控制转移、处理器控制(1)通用数据传送指令传送指令MOV(move)MOV指令传送功能图解MOV指令—立即数传送MOV指令—寄存器传送MOV指令—存储器传送MOV指令—段寄存器传送非法指令—两个操作数类型不一致非法指令—无法确定是字节还是字操作非法指令—两个操作数都是存储器非法指令—段寄存器的操作有一些限制交换指令XCHG(exchange)举例堆栈操作指令堆栈的图示(a)堆栈的建立(b)进栈指令PUSH(c)出栈指令POP堆栈操作的特点保存和恢复寄存器查表转换指令XLAT(translate)XLAT的例子P100图3-14(2)输入输出指令输入输出指令-概念输入输出指令-IN和OUT输入输出指令举例(3)地址传送指令取有效地址指令LEA(loadeffectiveaddress)举例地址传送与内容传送LDS与LES指令(4)标志传送指令单字节指令,操作数以隐含方式规定传送指令小结算术运算指令(1)加法和减法指令加、减指令例题-加法例题-减法带进位加、带借位减指令例题-无符号双字加法和减法增量和减量指令比较指令CMP(compare)求补指令NEG(negtive)例题-求补运算(2)乘法和除法指令乘法和除法指令(续)乘法指令举例除法指令举例思考符号扩展指令例题-符号扩展(3)十进制调整指令编码的比较未组合BCD码调整八位表1位组合BCD码调整未组合BCD码乘法、除法调整调整指令小结调整指令举例P111例3-42——46算术运算指令小结逻辑操作和移位指令(1)逻辑运算指令逻辑与指令AND测试指令TEST逻辑或指令OR逻辑异或指令XOR逻辑非指令NOT例题-逻辑运算例题-逻辑运算(答案)例题-逻辑运算指令的应用(2)移位指令(shift)逻辑左移指令SHL逻辑右移指令SHR算术左移指令SAL(arithmetic)算术右移指令SAR例题-数据移位CF只移入例题:将AL寄存器中的无符号数乘以10(3)循环移位指令(rotate)32位数据移位例题:非压缩BCD码合并为压缩BCD逻辑运算和移位指令小结控制转移指令目标地址的寻址方式目标地址的寻址范围:段内寻址目标地址的寻址范围:段间寻址(1)无条件转移指令无条件转移指令JMP(jump)(2)条件转移指令Jcc指令的分类条件转移指令的含义①判断单个标志位状态例题例题解答1-用JZ指令实现例题解答2-用JNC指令实现例题解答3-用JNS指令实现例题-判断是否为字母Y例题-偶校验②比较无符号数高低③比较有符号数大小例题-求较大值(无符号数)例题-求较大值(另解)例题-求较大值(另解对比)(3)循环控制指令其它循环控制指令例题-数据块传送(字节)例题-数据块传送(字)例题(4)过程调用与返回指令①子程序调用指令CALL②子程序返回指令RET例题-十六进制转换为ASCII码的子程序(5)中断指令中断指令格式控制转移指令小结串操作类指令串操作指令共同特点MOVS和CMPSSCASLODS和STOS重复前缀串操作指令举例串操作指令举例串操作指令