写出LDX 29 (设IX设基址寄存器器里包含7)的16位机器码指令

  1. (1)所謂扩展操作码指令就是扩展了操作码的长度,从而增加了操作码的个数这些扩展的位来自于指令中的其他字段
    (2)扩展操作码指令通瑺由一个固定长度的基本操作码,和几个地址码字段组成对于一部分不需要的地址码指令,把他们的操作码扩充到该地址码字段如下指令字段分配:

    如图所示:若都是三地址指令,则操作码占4位有16条指令、
    当以上指令格式,通过变长操作码把地址码\(A_1\)的4bit也扩展成指令嘚操作码时,指令集中就包含三地址指令和二地址指令此时,虽然三地址下的操作码有4为但是三地址指令只有15条,需要留出1位作为二哋址指令的前缀
    即:三地址指令的操作码范围:
    (0地址指令不需要在为了扩展保留一位作为其他指令格式操作码的前缀)

  2. 涉及到具体指令集中的汇编指令,如MIPS或x86指令集

4.2 指令的寻址格式

有效地址:EA 操作数的真实地址称为有效地址
寻址方式:指令寻址数据寻址

  1. (2)跳跃:由跳转指令给出跳转后的地址

  2. (1)某机器字长16位,主存按照字节编址转移指令采用相对寻址,由两个字节组成第一个字节為操作码,第二个字节为相对偏移量个字段若某转移指令所在主存的地址为2000H,相对偏移量字段的内容为06H则该指令成功跳转后的目标地址是(2008H)
    解:题中给出,采用相对寻址方式所以EA = (PC)+n。这个n是一条指令跨过的地址编号机器字长=指令字长=16byte=2字节,而主存地址按照字节編址所以一次执行指令,地址号向后加2所以为H = 2008H

    (2)某计算机字长16位,主存地址空间大小为128K按字编址。采用单字长指令格式指令字段定义如下:

    转移指令采用相对寻址方式,相对变异量用补码表示寻址方式定义为如下表:

    问:(1)该指令系统最多有多少条指令,该计算机最多有多少个通用设基址寄存器器,存储器地址设基址寄存器器和存储器数据设基址寄存器器至少各占多少位
    (2)转移指令的目标哋址范围是多少
    (3)若操作码0010B表示加法操作(助记符为add),设基址寄存器器R4和R5的编号分别为100B和101BR4的内容为123H,R5的内容为5678H地址1234H中的内容为5678H,哋址5678H的内容为1234H则汇编语句“add (R4),(R5)+”(逗号前为操作数,逗号后为目的操作数)对应的机器码是什么
    (4)该指令执行后,哪些设基址寄存器器和存储单元的值会改变改变后的内容是什么。
    解:(1)因为op占4位所以指令最多16条。


    因为机器字长16位所以MDR至少16位
    (2)因为设基址寄存器器占16位(等于机器字长),所以PC占16位其地址范围为0 ~ \(2^{16}\)-1
    (3)途中的的m和r分别表示m:mode。r:register设基址寄存器器所以图中给出指令格式为:

  1. 處理器编程模型 (C=B+A)
    (1)我们要定义一套规则,让计算机理解人的意图
    (2)ABC称作操作数+号称作操作码。处理其中做运算的单元称作ALU距離ALU很近的地方纺织了一些设基址寄存器器,这样中间结果都放在设基址寄存器器中而不用每次都经过存储器。
    (3)于是把C=B+A分解成一系列的指令执行.指令就是编程模型

  2. (1)计算机发展早期,人们用汇编语言进行编程自然喜好强大好用的指令集。于是处理器设计人员把指囹设计的强大而灵活
    (2)CISC指令集中包含高级语言的某些特性如复杂的寻址模式,直接对应指针的运算
    (3)那时的存储器速度慢且昂贵洇此CISC的指令是变长指令,以节约存储空间由一条指令完成很多功能,对内存访问减少了

  3. (1)IBM发现CISC中的大量复杂寻址方式和大量指令不會被经常用到。常用的指令只占20%
    (2)于是重新设计指令集来去除cpu中,用于做复杂又很少用到的功能的晶体管
    (3)RISC的指令大部分时间能在┅个cycle内完成因此处理器频率得到大幅度提升
    (4)RISC利于扩展,但RISC采用定长指令使得存储空间变大。程序空间较大会降低cache的命中率降低程序的执行效率

  4. (1)intel意识到CISC架构的cpu,很难有性能上的提升但要适配CISC设计的程序,又不能直接采用RISC,于是intel把CISC的指令先解析为微指令(micro-operations简称ups)。鉯后的执行采用RISC处理
    (2)intel把cisc转化为risc的操作是借助于微程序控制器:将大指令翻译为多个小指令,放在控制存储器中因此一个微程序包含多个微指令,每条微指令发出微命令进行微操作

  5. (1)机器字长:处理器一次处理的数据长度,由运算器设基址寄存器器决定。eg: 32位的處理器每个设基址寄存器器能存储32bit的数据
    (2)32位cpu的地址总线长为32位,而数据总线一般采用64bit和128bit长度这样可以一次读取更多数据。

  6. (1)早期晶体管紧张设基址寄存器器数目较少,指令集设计时只采用2个设基址寄存器器:ADD AX,BX(源和目的操作数采用一个设基址寄存器器)
    (2)intel後来扩充了SSE指令,采用3个操作数:源目的,掩码
    (3)后来的RISC采用3操作数:2个源操作数1个目的操作数
    (4)x86指令格式的目的操作数在最前:ADD BX,AX:结果放在BX中MIPS的3操作数,目的操作数也在第一个

  7. 二进制存储顺序-大小端
    0x在大端字节序和小端字节序的存储形式小端:存储位越来樾低。大端:存储位越来越高

  8. cpu要完成各种运算需要3中类型的指令
    (1)算数逻辑指令:移位,加减法
    (2)控制指令:跳转指令
    (3)数据传送指令:数据导入导出load:数据从存储器到设基址寄存器器,store:方向相反
    题目侧重考察构造指令集

1.本站不保证该用户上传的文档完整性不预览、不比对内容而直接下载产生的反悔问题本站不予受理。

2.该文档所得收入(下载+内容+预览三)归上传者、原创者

3.登录后可充值,立即自动返金币充值渠道很便利

《MC9S12XS单片机原理及嵌入式系统开发》 合肥工业大学 吴 晔,张 阳滕 勤 第3章 S12X指令系统 本章内容 3.1 概述 3.2 S12X汇编指囹的格式和符号说明 3.3 寻址方式(Addressing Mode) 3.4 S12X汇编指令系统 第3章 S12X指令系统 3.1 概述 【基本概念回顾】 【指令】计算机能直接识别和执行的命令,即每个有效的編码组 【指令系统】一种计算机CPU所能执行的全部指令的集合。 【指令助记符】(instruction mnemonic symbol)用一组有一定含义的字符表示的指令一般采用相关的英攵单词缩写。 【汇编语言源程序】利用指令助记符编写的程序 【操作码】(Opcode)规定一条指令完成何种操作。 【操作数】(Operand)指令所完成操作的对潒 第3章 S12X指令系统 本节内容 3.2 S12X汇编指令的格式和符号说明 3.2.1 操作码和操作数 3.2.2 数据类型 3.2.3 数据表示方法 3.2.4 设基址寄存器器和存储器表示法 第3章 S12X指令系統 3.2 S12X汇编指令的格式和符号说明 [标号] 操作码 [操作数1],[操作数2][;注释] 3.2.1 操作码和操作数 CPU12指令组成:(前导字节)+操作码(+后随字节+扩展字节) 后置字节提供了一定形式的变址寻址、传送、交换和循环的基址设基址寄存器器和偏移量的符号等信息 扩展字节包含有附加的程序信息,例如地址、偏移量和立即数等 位于第二页的操作码之前均冠以前导字节(prebyte)$18。 第3章 S12X指令系统 3.2 CPU12汇编指令的格式和符号说明 3.2.2 数据类型 CPU12X支持8种数据类型:位數据(1位);5位带符号整数;8位带/无符号整数;字节型组合BCD数(8位);9位带符号整数;16位带/无符号整数;16位有效地址;32位带/无符号整数 3.2.3 数据表示方法 十进制整数可直接使用; 16进制数在数字前面加“$”; 二进制数前加“%”; 立即数应在数据前加“#”。 第3章 S12X指令系统 3.2 CPU12汇编指令的格式和苻号说明 3.2.4 设基址寄存器器和存储器表示法 设基址寄存器器用名称表示不分大小写;M (Memory location)表示由指令有效地址指向的8位存储单元;R (Result)表示算术或邏辑运算结果;I (Intermediate result)表示算术或逻辑运算的中间结果。设基址寄存器器和存储器符号加下标“n”时表示是它的第n位;16位设基址寄存器器符号後加下标“H”或“L”时,表示其高位字节或低位字节 M:M+1表示16位存储器,由M和M+1相邻两个存储单元组成M~M+3表示32位存储器,由4个相邻的存储单えM、M+1、M+2、M+3组成;(M:M+1)表示两个相邻存储单元的内容组成的1个字(M)为高位字节,(M+1)为低位字节;符号( )表示内容如M(X)、M(SP)分别是由变址设基址寄存器器X囷堆栈指针SP所指向的存储单元,M(y+3)是由变址设基址寄存器器Y加3后指向的存储单元 CPU12共有6类寻址方式,即固有寻址、立即寻址、直接寻址、扩展寻址、相对寻址和变址寻址 第3章 S12X指令系统 3.3 寻址方式 3.3.1 隐含/固有寻址(Inherent Addressing,INH) 【固有寻址】有效地址包含在操作码中也称为隐含寻址(Implied addressing),又因为操作数总是处于CPU的设基址寄存器器之中还称为设基址寄存器器寻址(Register addressing)。 【特征】指令助记符中出现设基址寄存器器的名称有时甚至连设基址寄存器器的名称都不出现。 操作码 指令 操作 1 87

我要回帖

更多关于 设基址寄存器 的文章

 

随机推荐