指令系统及汇编程序设计(II)

指令系统及汇编程序设计(II)

ID:40485825

大小:5.71 MB

页数:437页

时间:2019-08-03

指令系统及汇编程序设计(II)_第1页
指令系统及汇编程序设计(II)_第2页
指令系统及汇编程序设计(II)_第3页
指令系统及汇编程序设计(II)_第4页
指令系统及汇编程序设计(II)_第5页
资源描述:

《指令系统及汇编程序设计(II)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、08九月20211微机原理与接口技术08九月20212指令系统及汇编语言程序设计§1概述一、指令系统人们要求计算机解决计算或处理信息的问题,首先必须把问题要转换为计算机能识别和执行的一步步操作步骤,我们把这种要求计算机执行的各种操作用命令形式写下来,这就称为指令。08九月20213指令系统及汇编语言程序设计通常一条指令对应一种基本操作,例如加、减、传送、移位等,一个计算机能执行什么样操作,能做多少种操作,是由该计算机的指令系统所决定的,因此,计算机所能执行的全部指令,就是计算机的指令系统。微处理器的主要功能是由它的指令系统来体现的。08九月20214指令

2、系统及汇编语言程序设计目前,一般小型或微型计算机的指令系统可以包括几十种或百余种指令(8086有115条)。每种计算机都有自己固定的指令系统,8086/8088的指令系统和M68000的指令系统具有不同的指令,不能相互兼容,08九月20215指令系统及汇编语言程序设计也就是说,8086/8088的指令系统中的指令,只能由8086/8088微处理器所识别和执行,而不能被M68000微处理器所识别和执行。但8086/8088微处理器可以执行8080/8085指令系统中的指令,所以只有同系列微处理器指令系统是相兼容的。08九月20216指令系统及汇编语言程序设

3、计二、指令格式计算机中的指令有操作码字段和操作数字段两部分组成。操作码字段指出计算机所要执行的操作,而操作数字段则指出在指令操作过程中所需的操作数据。例如,加法指令一方面需要指定做加法操作的部分,即操作码字段。08九月20217指令系统及汇编语言程序设计另一方面需给出被加数和加数部分,即操作数字段。操作数字段可以是操作数本身,也可以是操作数地址或地址的一部分,还可以是指向操作数地址的指针或其他有关操作数的信息。08九月20218指令系统及汇编语言程序设计指令的格式一般是:操作码操作数……操作数操作数字段可以有一个、二个或三个,通常称为一地址、二地址或三地

4、址指令。例如,单操作数指令,它只需指定一个操作数参加操作,如移位指令、增1、减1指令等,这都是一地址指令。08九月20219指令系统及汇编语言程序设计大多数运算指令是双操作指令,如算术和逻辑运算指令,对于这种指令,有的机器采用三地址指令,除指出参加运算的两个操作数以外,还指出运算结果存放地址,现大多数计算机采用二地址指令,此时分别称两个操作数为原操作数和目的操作数。08九月202110指令系统及汇编语言程序设计尽管在指令执行前这两个操作数都是原始操作数,但指令执行后将把运算结果存放到目的操作数的地址中去,当然目的操作数的原始数据将会丢失。如果此原始数据在

5、以后的运算中还会用到,那么必须在运算之前给它准备一个副本(即预先存储在内存或寄存器中)。8086/8088的运算指令就采用这种二地址指令。08九月202111指令系统及汇编语言程序设计三、寻址方式指令中操作数字段实质上指出参加操作运算的操作数存放于何处。一般说来,操作数可以存放在指令代码中,称为立即数。操作数也可以存放在CPU的内部寄存器中,称为寄存器操作数。操作数绝大多数存放在存储器中,称为存储器操作数。对于一部分I/O指令来说,操作数可以存放在接口电路的寄存器中。08九月202112指令系统及汇编语言程序设计指定立即数和寄存器操作数的表示方法比较简单

6、。而对存储器操作数来说,一个存储单元的地址就需要20位,怎样设法使它在指令的操作数字段的表示中减少位数呢?另外,从程序运行时的数据结构来看,操作数常常不是单个的数,往往是成组的以表格或数组形式存放在存储器的某一区域中,在这种情况下,指令用什么方式来指定操作数的地址更好呢?08九月202113指令系统及汇编语言程序设计从程序设计的通用性来看,操作数或操作数存放的地址在指令中的指定应具有易于改变的灵活性,因此,需要有多种方式来指定操作数或操作数地址的问题。指令中用于说明操作数所在地址的方法,称为寻址方式。08九月202114指令系统及汇编语言程序设计我们知道

7、,计算机只能识别二进制代码,机器指令是由二进制代码组成的,这种指令称为机器码,机器码是由一串0和1组成,没有明显的特征,人们不好记忆,不易理解,易出错。所以,编制程序成为一种十分困难和繁琐的工作。08九月202115指令系统及汇编语言程序设计因而人们就用一些助记符—通常是指令功能的英文词的缩写来代替操作码。如8086/8088中,数的传送指令用助记符MOV(MOVE缩写)表示。例:MOVDS,AX机器码:8ED8。MOVBP,SP机器码:8BEC。MOVAX,ES:[BX]机器码:268B0708九月202116指令系统及汇编语言程序设计这样,每条指令有

8、明显的特征,易于理解和记忆,也不易出错,此即汇编语言阶段。汇编语言书写的指令操作

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。