资源预览内容
第1页 / 共31页
第2页 / 共31页
第3页 / 共31页
第4页 / 共31页
第5页 / 共31页
第6页 / 共31页
第7页 / 共31页
第8页 / 共31页
第9页 / 共31页
第10页 / 共31页
亲,该文档总共31页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
计算机组成原理计算机组成原理主讲:张凯主讲:张凯数学与计算机科学系数学与计算机科学系20072008学年度学年度第五章第五章 处理器处理器本章的重点内容包括两个部分1)CPUCPU指令系统(汇编语言)指令系统(汇编语言)注意:该知识点主要讲解:a)机器语言与汇编语言b)汇编语言的寻址方式c)汇编语言的指令d)精简指令计算机和复杂指令计算机2)微程序控制器的设计微程序控制器的设计注意:该知识点是历年升本考试最喜欢出的压轴题,一般在14分16分左右。前言前言o本章主要研究计算机处理器中的指令系统,因为它定义了具体机器与软件之间的接口,是操作系统、编译程序,以及汇编语言程序设计的依据。一、机器语言一、机器语言o什么是机器语言?机器语言是程序员直接面对硬件进行编程,采用的是0、1的二进制编码,即用0、1码来描述计算机指令系统。o机器语言的优点和缺点机器语言由于是面对硬件编程,所以它能被计算机直接识别和运行,执行的效率很高。但是机器语言采用的是0、1的二进制编码,程序员很难编写,而且对于非计算机专业人员是不能编写的,大大地限制的计算机在各个行业使用和流通二、指令系统与机器语言二、指令系统与机器语言o程序员可以面对最低层的机器硬件,用指令来要求计算机各部件共同完成一组基本操作。这样程序员与CPU就有了“共同”的“语言”来交流。o从20世纪60年代起,随着计算机集成电路的发展和计算机市场竞争的日益加剧,大部分的计算机公司开始推出系列CPU芯片。o这种系列CPU芯片的基本指令集是相同的,如:Intel80x86系列CPU芯片。三、符号三、符号 语言与汇编语言与汇编 语言语言o机器语言很难辨认,于是我们采用符号化的助记符号来替代0、1码,来表示计算机指令系统。o这样的符号化指令和机器指令是一一对应的关系。符号化指令使人们在编写程序的时候容易理解和记忆。o在符号化指令的基础上,开发成功了汇编语言。但是,汇编语言不能直接被执行,必须通过汇编程序翻译成机器语言才能被执行。汇编汇编 语言编语言编 译的原理图译的原理图o 源程序源程序.asm汇编程序汇编程序masm目标程序目标程序.obj链接程序链接程序link可执行程序可执行程序.exe运行程序运行程序在在DOS下下显示结果显示结果四、汇编中的几个基本概念四、汇编中的几个基本概念o以Intel8086汇编语言为例,介绍几个基本概念o(1)数据类型二进制数据,后缀B,如:11101010 B十进制数据,后缀D,如:256 D八进制数据,后缀Q,如:546 Q十六进制数据,后缀H,如1234 H 或 0AB H名字数据,如 PI ,表示圆周率3.14字符串常量,采用ASCII码,如A41 HB42H 则有:AB4142 H接上页接上页o(2)运算符a)算术运算符:、*、/ b)关系运算符:EQ相等、NE不相等、LT小于 GT大于、LE小于等于、 GE大于等于 。c)逻辑运算符:AND与、OR或、NOT非o(3)操作码可以用算术符号,也可以用英文单词ADD 加 SUB 减MUL 乘 DIV 除接上页接上页o(4)地址码汇编语言指令中的地址码通常用十六进制来表示,有时也用十进制、寄存器名或存储器地址名来表示。o(5)标号与注释汇编语言允许使用标号与注释,以增强用户对程序的可读性。类似与C语言。标号,一般出现在指令前面注释,一般出现在一条指令后面,用 ;号隔开,注释不会被编译,只是便于用户阅读理解程序。接上页接上页o标号,如:START: MOV AX , 1234 H MOV BX , 2345 H ADD AX , BX . .o注释,如MOV AX , 1234 H ;把1234H送寄存器AX接上页接上页o(6)汇编语言指令的一般格式标号 : 操作码 操作数 ;注释如:用汇编指令描述计算 A 2 + 3 的程序 ORG C0 HSTART : MOV AX , 2 ADD AX , 3 HALT END START接上页接上页o(7)汇编程序汇编语言源程序不能被机器直接执行,必须通过汇编程序翻译成机器语言。这个翻译的过程,称为汇编。o补充一个知识点:翻译的过程有两种:编译和解释编译:一次性编好程序再翻译。解释:边编程边翻译。五、寻址方式五、寻址方式o指令的格式:操作码操作数其中,操作数又由目标操作数和源操作数。o计算机汇编语言中的寻址方式有以下几种:o1、立即数寻址、立即数寻址特点:源操作数是常数。格式:MOV AX , 3165H如图51所示。o2、寄存器直接寻址方式、寄存器直接寻址方式特点:源操作数是寄存器。格式:MOV AX , BX此外要注意4种16位的通用数据寄存器AX,BX,CX,DX接上页接上页o3、存储器直接寻址方式、存储器直接寻址方式特点:源操作数是存储单元地址。图53示格式:MOV AX , 3056 H注意,这里的3056H是地址,不是数据,要根据这个地址找到存储器里的数据送AX。o4、存储器间接寻址方式、存储器间接寻址方式特点:源操作数是间接的单元地址。格式:MOV AX , 0B58 H 如图54所示 或:MOV AX , 【SI】 其中,SI0B58 H接上页接上页o5、基址寻址方式、基址寻址方式特点:源操作数是基址寄存器偏移地址。格式:MOV AX , 【BX+10H】 或:MOV AX , 【BP+10H】o6、变址寻址方式、变址寻址方式特点:源操作数是变址寄存器偏移地址。格式:MOV AX , 【SI+10H】 或:MOV AX , 【DI+10H】o基址寻址和变址寻址可以合为一种方式,即:基基址址/变址寻址变址寻址,如: MOV AX , 【SI+DI+10H】接上页接上页o7、堆栈寻址方式问:什么是堆栈?堆栈有何特点?答:(1)堆栈是在内存中开辟的一个存储数据的连续区域。(2)其一端是固定的,称为栈底;另一端是活动的,称为栈顶,数据只能在栈顶进出,我们设置一个堆栈指针SP来指示当前栈顶的位置。数据进入堆栈称为入栈PUSH,而数据出栈称为退栈POP。注意:PUSH和POP在程序中是按后进先出原则成对出现的,而且它们的操作数是16位的数据,以此,一次数据入栈,就有SP2。接上页接上页o哪里可以用到堆栈呢?如前面所学过的中断控制中的断点保存与恢复,当CPU响应了中断请求以后,要保存当前CPU的数据和状态信息,那么就用PUSH入栈;当中断处理完成以后,CPU要恢复到原来的状态继续工作,就用POP退栈。o举例说明PUSH AXPUSH BX.POP BXPOP AXPUSH和POP成对出现,先进后出原则。接上页接上页o要注意堆栈和队列的区别。堆栈是先进后出原则,而队列是先进先出原则。o堆栈与队列的示意图栈顶栈顶栈底栈底SP队列队列接上页接上页o8086的段寻址方式8086的内存地址位数是20位,有1M的寻址能力,而我们的寄存器只有16位,寻址能力只有64K,因此8086采用了分段技术,使用4个16的段寄存器:DS、SS、ES、CS,分别表示数据段,堆栈段,附加段和代码段。o物理地址是20位的,段地址是16位的。o物理地址和段地址的关系是:物理地址段地址*16D偏移地址六、六、CPU中的可编中的可编 程寄存器程寄存器o8086中使用的可编程的寄存器有14个16位的寄存器,它们分别是:1、数据寄存器AX、BX、CX、DX、2、指针及地址寄存器SP、BP、SI、DI3、段寄存器DS、SS、ES、CS4、控制寄存器IP、FLAGFLAG标志寄存器标志寄存器oFLAG标志寄存器主要包括9个重要的寄存器,其中有6个状态标志:CF:进位标志AF:辅助进位标志,也称为半进位标志ZF:零标志PF:奇偶标志SF:符号标志,也称为负号标志OF:溢出标志 和3个控制标志:IF:中断标志 TF:陷阱标志 DF:方向标志5.1.5 Intel 8086 指令简介指令简介(一)通用数据传送指令1)MOV和XCHG2)IN和OUT3)LEA、LDS和LES4)LAHF和SAHF、PUSHF和POPF(二)算术运算指令1)ADD 加法指令 ADC 带进位的加法指令 INC 增1指令,自加12)SUB 减法指令 NEG 求补指令接上页接上页o CMP 比较指令如:LOOP:MOV AX,34 MOV BX,55 CMP AX,BX JNZ LOOPo3)MUL 乘法指令 IMUL 有符号数的乘法指令o4)DIV 除法指令 IDIV 有符号数的除法指令逻辑运算指令逻辑运算指令oNOT 逻辑“非”oAND 逻辑“与”oOR 逻辑“或”oXOR 逻辑“异或”oTEST 测试指令完成逻辑与的功能,但不改变结果,只是用来测试某些位是0还是1。移位指令和循环指令移位指令和循环指令o移位指令1)算术左移 SHL2)算术右移 SHR3)逻辑左移 SAL4)逻辑右移 SARo循环指令1)循环左移2)循环右移3)带进位的循环左移4)带进位的循环右移针对有符号数针对有符号数针对无符号数针对无符号数举例说明举例说明 程序控制指令程序控制指令oJMP 无条件转移如:JMP FAR ;段间的转移 JMP NEAR ;段内的转移oCALL 过程调用指令,常用于子程序的调用如:CALL SUB1oRET 过程返回指令常用于子程序执行完成后,返回主程序时使用。5.1.6 CISC与与RISCoRISC 即 精简指令系统计算机的英文缩写。oCISC 即 复杂指令系统计算机的英文缩写。oRISC和CISC是目前计算机指令系统设计的两种不同的思路。现在,我们所使用的计算机几乎都是精简指令计算机。oRISC 即 精简指令系统计算机,是采用20的指令来完成80的功能。5.3.3 微程序控制器微程序控制器o注意:微程序控制器的特点、构成原理图、各部特点、构成原理图、各部分的功能分的功能。o参考书本P197P198o该知识点是历年升本考试的重点,请同学们重点注意。该知识点设计到了电子电路,模拟电路,组成原理,计算机系统结构等多门学科的内容。o为了降低本学期考试的难度,该知识点不考。但希望,有升本考试和自学考试任务的同学要注意这个知识点。本学期考试说明本学期考试说明o本课程是闭卷考试科目,满分100分,时间120分钟,期末考试成绩占综合成绩的80,平时成绩占20。o考试题型1)单项选择 15个,15分2)填空题 15个空,30分3)简答题 3个,20分4)计算题 4个,35分
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号