第4章指令系统-堆栈寻址和习题

合集下载

寻址方式及指令系统习题与解答

寻址方式及指令系统习题与解答

寻址方式及指令系统习题与解答计算机科学与工程学院黄洪波2012年3月一、单项选择题1.设BX=2000H,SI=3000H,指令MOV AX,[BX+SI+8]的源操作有效地址为()。

A.5000H B.5008H C.23008H D.32008H2.设DS=1000H,ES=2000H,BX=3000H,指令ADD AL,[BX]的源操作数的物理址为()。

A.13000H B.23000H C.33000H D.3000H3.设DS=2000H,ES=3000H,SI=200H,指令MOV ES:[SI],AL的目的操作数的物理地址为()。

A.20200H B.30200H C.50200H D.200H4.指令MOV MEM[BX],AX中的MEM是()。

A.原码B.反码C.补码D.移码5.用来作为寄存器间接寻址的寄存器有()个。

A.8 B.6 C.5 D.46.指令MOV [BX+SI],AL中的目的操作数使用()段寄存器。

A.CS B.DS C.SS D.ES7.指令MOV BX,[BP+5]中的源操作数使用()段寄存器。

A.CS B.DS C.SS D.ES8.段内间接寻址只改变()中的内容。

A.CS B.IP C.CS和IP D.PSW9.段间间接寻址只改变()中的内容。

A.CS B.IP C.CS和IP D.PSW10.下述指令中不改变PSW的指令是()。

A.MOV AX,BX B.AND AL,0FHC.SHR BX,CL D.ADD AL,BL11.下述指令中不影响CF的指令是()。

A.SHL AL,1 B.INC CXC.ADD [BX],AL D.SUB AX,BX12.两个整数补码9CH和7AH相加运算后,会产生()。

A.无溢出且无进位B.无溢出但有进位C.有溢出且有进位D.有溢出但无进位13.指令JMP WORD PTR [BX]属于()寻址。

A.段内直接B.段内间接C.段间直接D.段间间接14.指令MOV AX,[BX+SI+8]的源操作数属于()寻址。

第4章 TMS320F28x系列DSP的寻址方式及指令系统

第4章 TMS320F28x系列DSP的寻址方式及指令系统
第4章 TMS320F28x系列DSP的寻址方式及 指令系统
4.1 TMS320F28x系列DSP的寻址方式 4.1.1 寻址方式选择位AMODE 4.1.2 直接寻址方式 4.1.3 堆栈寻址方式 4.1.4 间接寻址方式 4.1.5 寄存器寻址方式 4.1.6 其他寻址方式 4.1.7 32位操作数的定位 4.2 TMS320F28x系列DSP指令系统概述
在 F2812间接寻址方式中,使用哪个辅助寄存器指针在指令中并不 被明确指出。而在 C2xLP的间接寻址方式中,3位长度的辅助寄存器指 针被用来选择当前使用哪个辅助寄存器以及下次操作将使用哪个辅助寄 存器。
汇编器/编译器对AMODE位的追踪
编译器总是假定AMODE=0,所以它只使用对AMODE=0 有效的寻址模式。而汇编器可以通过设置命令行选项实现默认 AMODE=0或者AMODE=1。 √ – v28 ;假定AMODE=0(C28x寻址方式) – v28 – m20 ;假定AMODE=1(与C2xLP全兼容的寻址方式) √ 在文件中使用内嵌伪指令
器使用的方式。这种方式与C2xLP CPU的寻址方式不完全兼容。数据页指针 偏移量是6位(在C2xLP CPU中是7位),并且不支持所有的间接寻址方式。
▲ AMODE=1——该方式包括的寻址方式完全与C2xLP 器件的寻址方式
兼容。数据页指针的偏移量是7位并支持所有C2xLP 支持的间接寻址方式。
周鹏 安徽工程大学电气工程学院
周鹏 安徽工程大学电气工程学院
寻址方式是指CPU根据指令中给出的地址信息
来寻找指令中操作数物理地址的方式,即获得操作
数的方式。指令系统即各种指令的集合,或称指令
集 。 本 章 简 要 介 绍 C28x 系 列 ( TMS320F2812 属 于 C28x系列)DSP的寻址方式和指令系统。

《计算机原理学习指导》第四章指令系统综合练习题参考答案

《计算机原理学习指导》第四章指令系统综合练习题参考答案

《计算机原理学习指导》第四章指令系统综合练习题参考答案一、填空题1 、一个完善的指令系统应满足以下4个方面的要求,它们是:完备性、有效性、规整性和兼容性。

2、一条完整的指令是由操作码和地址码(操作数)两部分信息组成的。

3 、指令中的地址码字段包括源操作数的地址和操作结果数的地址(目的操作数的地址),前者用语指明操作数的存放处,后者用语存放运算的结果。

4 、指令格式按地址码部分的地址个数可以分为零地址指令格式、一地址指令格式、二地址指令格式和三地址指令格式。

5、常见的操作码方法有定长操作码和扩展操作码。

6、逻辑运算指令包括逻辑乘(与)、逻辑加(或)、逻辑非(求反)和异或(按位加)等操作。

二、单项选择题1、直接、间接、立即这 3 种寻址方式指令的执行速度有快到慢的排序是( C )A .直接、立即、间接B.直接、间接、立即C .立即、直接、间接D.立即、间接、直接2、指令系统中采用不同寻址方式的目的是(B)A .实现存储程序和程序控制B.缩短指令长度,扩大寻址空间,提高编程灵活性C .可以直接访问外存D.提高扩展操作码的可能并降低指令译码难度3、一地址指令中为了完成两个数的算术运算,除地址码指明的一个操作数外,另一个数常采用( C )A .堆栈寻址方式B.立即寻址方式C.隐含寻址方式 D .间接寻址方式4、对某个寄存器中操作数的寻址方式称为(C)寻址方式A .直接B .间接C .寄存器直接D.寄存器间接5、寄存器间接寻址方式中,操作数在(B)A .通用寄存器 B.主存单元C.程序计数器 D .外存6、变址寻址方式中,操作数的有效地址等于( C )A .基址寄存器内容加上偏移量B.堆栈指示器内容加上偏移量C .变址寄存器内容加上偏移量D.程序计数器内容加上偏移量7、扩展操作码是(D)A .操作码字段中用来进行指令分类的代码B.指令格式中不同字段设置的操作码C.操作码字段外用来操作字段的代码D.一种指令优化技术,即让操作码的长度随地址数的变化而变化8 A 、下面关于汇编语言的叙述中,不恰当的是( D ).对程序员的训练要求来说,需要硬件知识B.汇编语言对机器的依赖性强C.用汇编语言编写程序的难度比高级语言大D.用汇编语言编写的程序执行速度比高级语言慢9 A 、能够改变程序执行顺序的是( D ).数据传送类指令B.移位操作类指令 C .输入 /输出类指令 D .条件 /无条件转移类指令10 、以下的( D )不能支持数值处理A .算术运算类指令B.移位操作类指令C.字符串处理类指令D.输入/ 输出类指令三、名词解释题1 、指令:计算机能够识别和执行的操作命令2 、指令系统:一台计算机或一个计算机系统能够执行的各种指令的集合3 、指令字:一条完整的指令称为一个指令字4 、操作码:表示操作的性质及功能5 、地址码:表示指令的操作对象,指出操作数的地址6 、指令字长:等于地址码长度加上操作码长度7、定长操作码:让操作码的长度固定且集中放在指令字的一个字段中8、扩展操作码:操作码的长度可变且分散地放在不同的字段中9、寻址方式:指确定本条指令的地址及下一条要执行的指令地址的方法10、汇编语言:一种面向机器的程序设计语言,用助记符形式表示,属于低级程序设计语言11、机器语言:一种能被机器识别和执行的语言,用二进制数“0”和“1”形式表示12、 RISC :精简指令系统计算机13: CISC :复杂指令系统计算机,指具有大量指令的计算机系统四、简答题1、计算机指令中一般包含哪些字段?分别是什么含义?答:计算机指令中一般包含地址码和操作码两部分,地址码表示指令的操作对象,指出操作数的地址,操作码表示操作的性能及功能。

作业习题 寻址方式和指令

作业习题 寻址方式和指令

寻址方式和指令习题一、选择题1、MOVX A,@DPTR指令中源操作数的寻址方式是()(A)寄存器寻址(B)寄存器间接寻址(C)直接寻址(D)立即寻址2、ORG 0003HLJMP 2000HORG 000BHLJMP 3000H当CPU响应外部中断0后,PC的值是()(A)0003H (B)2000H (C)000BH (D)3000H3、执行PUSH ACC指令,MCS-51完成的操作是()(A)SP+1 SP (ACC)(SP)(B)(ACC)(SP)SP-1 SP(C)SP-1 SP (ACC)(SP) (D)(ACC)(SP)SP+1 SP4、LCALL指令操作码地址是2000H,执行完相子程序返回指令后,PC=()(A)2000H (B)2001H (C)2002H (D)2003H5、51执行完MOV A,#08H后,PSW的哪一位被置位()(A)C (B)F0 (C)OV (D)P6、下面条指令将MCS-51的工作寄存器置成3区()(A)MOV PSW,#13H (B)MOV PSW,#18H(C)SETB PSW.4 CLR PSW.3 (D) SETB PSW.3 CLR PSW.47、执行MOVX A,@DPTR指令时,MCS-51产生的控制信号是()(A)/PSEN (B)ALE (C)/RD (D)/WR8、MOV C,#00H的寻址方式是()(A)位寻址(B)直接寻址(C)立即寻址(D)寄存器寻址9、ORG 0000HAJMP 0040HORG 0040HMOV SP,#00H当执行完上面的程序后,PC的值是()(A)0040H (B)0041H (C)0042H (D)0043H10、对程序存储器的读操作,只能使用()(A)MOV指令(B)PUSH指令(C)MOVX指令(D)MOVC指令二、判断题1、MCS-51的相对转移指令最大负跳距是127B。

()2、当MCS-51上电复位时,堆栈指针SP=00H。

第4章习题

第4章习题

一、选择题1.RISC访内指令中,操作数的物理位置一般安排在(C )。

A 栈顶和次栈顶B 两个主存单元C 一个主存单元和一个通用寄存器D 两个通用寄存器2.单地址指令中为了完成两个数的算术运算,除地址码指明的一个操作数外,另一个常需采用(C )。

A 堆栈寻址方式B 立即寻址方式C 隐含寻址方式D 间接寻址方式3.寄存器间接寻址方式中,操作数在(B )。

A 通用寄存器B 主存单元C 程序计数器 D 堆栈4.指令系统中采用不同寻址方式的目的主要是(B)A 实现存储程序和程序控制B 缩短指令长度,扩大寻址空间,提高编程灵活性C 可以直接访问外存D 提供扩展操作码的可能并降低指令译码难度5.堆栈寻址方式中,设A为累加器,SP为堆栈指示器,M为SP指示的栈顶单SP,(SP)-1→SP,则出栈操作的动作就元,如果进栈操作的动作是:(A)→MSP为(B )A (M)→A,(SP)+1→SPSP)→AB (SP)+1→SP,(MSPC (SP)-1→SP,(M)→ASP)→A,(SP)-1→SPD (MSP6.下列几项中,不符合RISC指令系统的特点是(B )A 指令长度固定,指令种类少B 寻址方式种类尽量减少,指令功能尽可能强C 增加寄存器的数目,以尽量减少访存次数D 选取使用频率最高的一些简单指令,以及很有用但不复杂的指令二、填空题1.形成指令地址的方法称为指令寻址,通常是(顺序)寻址,遇到转移指令时(跳跃)寻址。

2.RISC指令系统的最大特点是:只有(取数)指令和(存数)指令访问存储器,其余指令的操作均在寄存器之间进行。

3.二地址指令中,操作数的物理位置有三种形式,分别是(SS )型、(RR )型和(RS )型。

4.一个较完善的指令系统,应当有(数据处理)、(数据存储)、(数据传送)、(程序控制)四大类指令。

5.机器指令对四种类型的数据进行操作。

这四种数据类型包括(地址数据)型数据、(数值数据)型数据、(字符数据)型数据、(逻辑数据)型数据。

第4章 指令系统

第4章 指令系统

3. 规整性
规整性包括指令系统的对称性,匀齐性,指令 格式和数据格式的一致性.对称性是指:在指 令系统中所有的寄存器和存储器单元都可同等 对待,所有的指令都可使用各种寻址方式.匀 齐性是指:一种操作性质的指令可以支持各种 数据类型.
4.兼容性 兼容性
系列机各机种之间具有相同的基本结构和共 同的基本指令集,因而指令系统是兼容的,即 各机种上基本软件可以通用.但由于不同机种 推出的时间不同,只能做到"向上兼容" .
目前在指令操作码设计上主要采用以下两 种编码方式 1. 固定长度操作码 操作码的长度是固定的,且集中放在 指令字的一个字段中,指令的其余部分全 部用于地址码.例如IBM370机和VAX-11系 列机,操作码的长度均为8位,可表示256 种不同的操作. 2. 可变长度操作码
4.2.2 地址码
地址码用于指定操作数和存放运算结果的地址, 通常称为操作数.操作数可以是一个直接的数或者 是一个数据所在的地址,它以空格与操作码分开.
例如: MOV AX,[SI]
假如用户用高级语言编程,根本不用 考虑寻址方式,因为这是编译程序的事,但 若用汇编语言编程,则应对它有确切的了解, 才能编出正确而又高效的程序.此时应认真 阅读指令系统的说明书,因为不同计算机采 用的寻址方式是不同的,即使是同一种寻址 方式,在不同的计算机中也有不同的表达方 式或含义. 思考:设计指令系统时,数据的寻址方式 越多越好吗?为什么?
4.直接寻址 指令中的形式地址A就是操作数的真实 地址EA,这种寻址方式称为直接寻址方式, 又称为绝对寻址方式.如图5-3所示.
OP 寻址特征 A 主存 A 操作数
图5-3 直接寻址方式
例如: MOV AL,[0080H] MOV AX,[1000H]

《计算机组成原理》教程第4章指令系统

《计算机组成原理》教程第4章指令系统

4
二 指令的格式
即指令字用二进制代码表示的结构形式
包括 操作码:操作的性质 操作码 地址码:操作数(operand)的存储位置,即参加操作的 operand , 地址码 数据的地址和结果数的地址
操作码域(op) 地址码域(addr)
5
1.操作码 操作码
指令的操作码表示该指令应进行什么性质的操作。 组成操作码字段的位数一般取决于计算机指令系统的 规模。 固定长度操作码:便于译码,扩展性差 . 可变长度操作码:能缩短指令平均长度 操作码的的位数决定了所能表示的操作数,n位操 作码最多表示2n种操作
(2). 堆栈工作过程 .
(一)进栈操作 ① 建立堆栈,由指令把栈顶地址送入SP,指针 指向栈顶。 ② 进栈:(A)→Msp, (sp)-1→SP ;Msp:存储 器的栈顶单元 (二)出栈操作 (SP)+1→SP, (Msp)→A
22
五.指令类型
一个较完善的指令系统应当包括: 数据传送类指令: 例)move、load、store等 算术运算类指令: 例)add、sub、mult、div、comp等 移位操作类指令: 例) shl,shr,srl,srr 逻辑运算类指令: 例)and、or、xor、not等 程序控制类指令: 例)jump、branch、jsr、ret、int等 输入输出指令: 例)in、out等 字符串类指令: 例)如alpha中cmpbge、inswh、extbl等 系统控制类指令: 例)push、pop、test等
18
10) *段寻址方式 段寻址方式 Intel 8086 CPU中采用了段寻址方式(基址寻址的特例)。 由16位段寄存器和16位偏移量产生20位物理地址 11)*自动变址寻址 自动变址寻址 指在变址方式中,每经过一次变址运算时,都自动改变变址寄存 器的内容,以后在PDP-11中详讲.

楼第4章指令系统习题解答

楼第4章指令系统习题解答

楼第4章指令系统习题解答习题解答:1.什么是寻址模式?8086/8088 CPU的寻址模式是什么?答:指令的寻址方式就是指获得操作数所在地址的方法。

8086/8088cpu指令的寻址方式可分为8种,为立即寻址、直接寻址、寄存器寻址、寄存器间接寻址、寄存器相对寻址、基址变址寻址、基址变址相对寻址、隐含寻址。

2.指示源操作数和目标操作数在以下指令中的寻址方式(1)movax,[si]源操作数:寄存器寻址目的操作数:寄存器间接寻址(2)movdi,100源操作数:寄存器寻址目的操作数:立即寻址(3)mov[bx],al源操作数:寄存器间接寻址目的操作数:寄存器寻址(4)mov[bx+si],cx源操作数:基址变址寻址目的操作数:寄存器寻址(5)adddx,106h[si]源操作数:寄存器寻址目的操作数:寄存器相对寻址3.阅读以下说明(1)sti对(2)call1000h错(3)divax,dl错(4)shlal,4错(5)popax对(6)inal,[30h]错(7)inccs错(8)out40h,al对4.地址是根据已知的物理条件计算的。

已知:SS=1000h,ES=2000h,DS=3000h,CS=4000H,BX=5000h,di=1200h,BP=2300h(1)(2)(3)(4)(5)5.将SP的初始值设置为2400h,ax=4000H,BX=3600h,然后在执行pushax指令后,SP=?,执行pushbx和popax后,SP=?答:则执行指令pushax后,sp=2400h-2=23feh,再执行pushbx和popaxMovax,[2300h]计算公式:DS×16+2300hmov[BX][di],ax计算公式:DS×16+BX+diaddax,es:[2100h]计算公式:es×16+2100hsubdx,[BP+6]计算公式:SS×16+BP+6movax,[di]计算公式:DS×16+di后sp=23feh。

第4章指令系统层习题参考解答-汇编语言与计算机组成原理 答案

第4章指令系统层习题参考解答-汇编语言与计算机组成原理 答案

1.什么是“程序可见”的寄存器?程序可见寄存器是指在用户程序中用到的寄存器,它们由指令来指定。

2. 80x86微处理器的基本结构寄存器组包括那些寄存器?各有何用途?基本结构寄存器组按用途分为通用寄存器、专用寄存器和段寄存器3类。

通用寄存器存放操作数或用作地址指针;专用寄存器有EIP和EFLAGS,分别存放将要执行的下一条指令的偏移地址和条件码标志、控制标志和系统标志;段寄存器存放段基址或段选择子。

3.80x86微处理器标志寄存器中各标志位有什么意义?常用的7位:CF进位标志: 在进行算术运算时,如最高位(对字操作是第15位,对字节操作是第7位)产生进位或借位时,则CF置1;否则置0。

在移位类指令中,CF用来存放移出的代码(0或1)。

PF奇偶标志: 为机器中传送信息时可能产生的代码出错情况提供检验条件。

当操作结果的最低位字节中1的个数为偶数时置1,否则置0。

AF辅助进位标志: 在进行算术运算时,如低字节中低4位(第3位向第4位)产生进位或借位时,则AF置1;否则AF置0。

ZF零标志:如指令执行结果各位全为0时,则ZF置1;否则ZF置0。

SF符号标志:其值等于运算结果的最高位。

如果把指令执行结果看作带符号数,就是结果为负,SF置1;结果为正,SF置0。

OF溢出标志: 将参加算术运算的数看作带符号数,如运算结果超出补码表示数的范围N,即溢出时,则OF置1;否则OF置0。

DF方向标志: 用于串处理指令中控制处理信息的方向。

当DF位为1时,每次操作后使变址寄存器SI和DI减小;当DF位为0时,则使SI和DI增大,使串处理从低地址向高地址方向处理。

4.画出示意图,简述实模式下存储器寻址的过程。

20位物理地址如下计算(CPU中自动完成):10H×段基址+偏移地址=物理地址5. 画出示意图,简述保护模式下(无分页机制)存储器寻址的过程。

采用对用户程序透明的机制由选择子从描述子表中选择相应的描述子,得到欲访问段的段基址、段限等有关信息,再根据偏移地址访问目标存储单元。

微机原理第4章练习题及答案

微机原理第4章练习题及答案

微机原理第4章练习题及答案第4章 80x86指令系统一、自测练习题㈠选择题 1.MOV AX,[BX+SI]的源操作数的物理地址是( )。

A.(DS)×16+(BX)+(SI) B. (ES)×16+(BX)+(SI) C.(SS)×10H+(BX)+(SI) D.(CS)×10H+(BX)+(SI)2.MOV AX,[BP+Sl]的源操作数的物理地址是( )。

A.(DS)×10H+(BP)+(SI) A. (ES)×16+(BP)+(SI) C.(SS)×16+(BP)+(SI) D.(CS)×10H+(BP)+(SI) 3.MOV AX,ES:[BX+SI]的源操作数的物理地址是( )。

A.(DS)×16+(BX)+SI) B.(ES)×10H+(BX)+(SI) C.(SS)×10H+(BX)+SI) D.(CS)×16+(BX)+(SI)4.JMP WORD PTR[DI]是( )。

A.段内间接转移B.段间间接转移C.段内直接转移D.段间直接转移5.JMP FAR PTR BlOCK(BLOCK是符号地址)是( )。

A.段内间接转移B.段间间接转移C..段内直接转移D.段间直接转移6.INC指令不影响( )标志。

A.OF B.CF C.SF D.ZF 7.条件转移指令JNE的测试条件是( )。

A.ZF=1 B.CF=0 C.ZF=0 D.CF=1 8.下列指令中,有语法错误的是( )。

A.MOV [SI],[DI] B.IN AL,DX C.JMP WORD PTR[BX+8] D.PUSH WORD PTR 20[BX+S1] 9.假定(SS)=2000H,(SP)=0100H,(AX)=2107H,执行指令PUSH AX后,存放数据21H的物理地址是。

A.20102H B.20101H C.200FEH D.200FFH 10.对于下列程序段:AGAIN:MOV AL,[SI] MOV ES:[DI],AL INC SI INC DI LOOP AGAIN 也可用指令完成同样的功能。

计算机组成原理习题 第四章

计算机组成原理习题 第四章

第四章一.填空题1.根据操作数所在位置,指出其寻址方式:操作数在寄存器中,称为寻址方式;操作数地址在寄存器中,称为寻址方式;操作数在指令中,称为寻址方式;操作数地址在指令中,为寻址方式。

操作数的地址,为某一个寄存器中的内容与位移之和,则可以是、和寻址方式。

2.设字长和指令长度均为24位,若指令系统可完成108种操作,且具有直接、间接(一次间址)、变址、基址、相对、立即等6种寻址方式,则在保证最大范围内直接寻址的前提下,指令字中操作码占位,寻址特征位占位,可直接寻址的范围是,一次间址的范围是。

3.指令字中的地址码字段(形式地址)有不同的含意,它是通过体现的,因为通过某种方式的变换,可以得出地址。

常用的指令地址格式有、、和四种。

4.立即寻址的指令其指令的地址字段指出的不是,而是。

5.寄存器直接寻址操作数在中,寄存器间接寻址操作数在中,所以执行指令的速度前者比后者。

6.设形式地址为X,则直接寻址方式中,操作数的有效地址为;间接寻址方式中,操作数的有效地址为;相对寻址中,操作数的有效地址为。

7.变址寻址和基址寻址的区别是:基址寻址中基址寄存器提供,指令的地址码字段提供。

而变址寻址中变址寄存器提供,指令的地址码字段提供。

8.指令寻址的基本方式有两种,一种是寻址方式,其指令地址由给出,另一种是寻址方式,其指令地址由给出。

9.不同机器的指令系统各不相同,一个较完善的指令系统应该包括、、、、、等类指令。

10.常见的数据传送类指令的功能可实现和之间或和之间的数据传送。

11.设指令字长等于存储字长,均为24位,某指令系统可完成108种操作,操作码擦汗高难度固定,且具有直接、间接(一次间址)、变址、基址、相对、立即等寻址方式,则在保证最大范围内直接寻址的前提下,指令字中操作码占位,寻址特征占位,可直接寻址的范围是,一次间址的范围是。

12.设计器指令系统可完成98种操作,指令字长为16位,操作码长度固定。

若该指令系统具有直接、间接、变址、基址、相对、立即等六种寻址方式,则在保证最大范围内直接寻址的前提下,其指令代码中操作码占位,寻址特征占位,形式地址码占位,一次间址的范围是。

计组第4章

计组第4章

CISC:
•复杂指令系统计算机。 •指令系统中指令数量多达几百条。
RISC:
•精简指令系统计算机。 •选取使用频率最高的简单指令,指令 条数少。
4.1.2 对指令系统性能的要求
一个完善的指令系统应满足如下 四方面的要求:
完备性 规整性
有效性
兼容性
完备性 是指用汇编语言编写各
种程序时,指令系统直接提 供的指令足够使用,而不必 用软件来实现。完备性要求 指令系统丰富、功能齐全、 使用方便。
《计算机组成原理》
第四章 指令系统
介绍几个基本概念
指令是指挥机器完成某种操作的命令。
指令系统是某台计算机能直接识别并正
确执行的所有指令的集合。
指令系统是表征一台计算机性能的重要
因素,是计算机软件与硬件的交界面。
主要内容
1. 2. 3. 4. 5. 指令系统的发展 指令的格式 寻址方式 指令的分类和功能 典型指令系统的模型
操作操作数指令操作码寄存器指令操作数寄存器直接寻址操作码存储器指令操作数直接寻址操作码操作数存储器寄存器指令存储器指令操作码操作数寄存器间接寻址存储器间接寻址操作码操作数pc指令存储器存储器寄存器指令操作码操作数变址寻址pc存储器寄存器指令操作码操作数存储器寄存器指令操作码操作数变址相对寻址间接变址寻址16位偏移量dop其中i为间接寻址标志位x为寻址模式字段d位偏移量字段
有效性是指利用该指令系统所编
写的程序能够高效率地运行。 高效率主要表现:


空间:在程序占据存储空间小;
时间:执行速度快。
规整性包括指令系统的对称性、匀齐性、
指令格式和数据格式的一致性。
• 对称性:指在指令系统中所有的寄存器 和存储器单元都可同等对待,所有的指 令都可使用各种寻址方式; • 匀齐性:指一种操作性质的指令可以支 持各种数据类型; • 指令格式和数据格式的一致性:指指令 长度和数据长度有一定的关系,以方便 处理和存取。通常都是字节的整数倍。

ARM嵌入式系统结构与编程(第2版)_第1-4章_习题答案

ARM嵌入式系统结构与编程(第2版)_第1-4章_习题答案

思考与练习题答案
1. 在指令编码中,条件码占有几位,最多有多少个条件,各个条件是如何形成的? 答:见教材 3.1 节的描述。
2. 指令条件码中,V 标志位在什么情况下才能等于 1? 答:当指令的算术运算发生异常时,V 标志位置 1。例如,两个正数相加,其
结果为一负数;或者是两个负数相加,其结果为一正数,都会置 V 标志位。
《ARM 嵌入式系统结构与编程》第 2 版,邱铁 编著. 清华大学出版社. 2013 年 8 月第 2 版,2015 年 8 月第 4 次印刷
称为异常模式
4. 分析程序状态寄存器(PSR)各位的功能描述,并说明 C、Z、N、V 在什 么情况下进行置位和清零。
答:PSR 的具体格式为
V—溢出标志位 对于加/减法运算指令,当操作数和运算结果为二进制补码表示的带符号数时,
4. 分析逻辑右移、算术右移、循环右移、带扩展的循环右移它们间的差别。 答:见教材 3.2 节的图 3-1 移位操作功能描述。
5. ARM 数据处理指令具体的寻址方式有哪些,如果程序计数器 PC 作为目标寄存 器,会产生什么结果?
答:ARM 数据处理指令具体的寻址方式有 5 种,见教材 3.2 节的具体说明。 如果程序计数器 PC 作为目标寄存器,会产生程序发生跳转。
0x1FE80000
答:每个立即数由一个 8 位的常数进行 32 位循环右移偶数位得到,其中循环右
移的位数由一个 4 位二进制的两倍表示。即:
<immediate>=immed_8 进行 32 位循环右移(2*rotate_4)位
符合这一条件的都为合法的立即数。
1) 0x5430 0B 0101 0100 0011 0000
3. 在 ARM 指令中,什么是合法的立即数?判断下面各立即数是否合法,如果合

寻址方式及指令系统习题与解答

寻址方式及指令系统习题与解答

寻址方式及指令系统习题与解答计算机科学与工程学院黄洪波2012年3月一、单项选择题1.设BX=2000H,SI=3000H,指令MOV AX,[BX+SI+8]的源操作有效地址为()。

A.5000H B.5008H C.23008H D.32008H2.设DS=1000H,ES=2000H,BX=3000H,指令ADD AL,[BX]的源操作数的物理址为()。

A.13000H B.23000H C.33000H D.3000H3.设DS=2000H,ES=3000H,SI=200H,指令MOV ES:[SI],AL的目的操作数的物理地址为()。

A.20200H B.30200H C.50200H D.200H4.指令MOV MEM[BX],AX中的MEM是()。

A.原码B.反码C.补码D.移码5.用来作为寄存器间接寻址的寄存器有()个。

A.8 B.6 C.5 D.46.指令MOV [BX+SI],AL中的目的操作数使用()段寄存器。

A.CS B.DS C.SS D.ES7.指令MOV BX,[BP+5]中的源操作数使用()段寄存器。

A.CS B.DS C.SS D.ES8.段内间接寻址只改变()中的内容。

A.CS B.IP C.CS和IP D.PSW9.段间间接寻址只改变()中的内容。

A.CS B.IP C.CS和IP D.PSW10.下述指令中不改变PSW的指令是()。

A.MOV AX,BX B.AND AL,0FHC.SHR BX,CL D.ADD AL,BL11.下述指令中不影响CF的指令是()。

A.SHL AL,1 B.INC CXC.ADD [BX],AL D.SUB AX,BX12.两个整数补码9CH和7AH相加运算后,会产生()。

A.无溢出且无进位B.无溢出但有进位C.有溢出且有进位D.有溢出但无进位13.指令JMP WORD PTR [BX]属于()寻址。

A.段内直接B.段内间接C.段间直接D.段间间接14.指令MOV AX,[BX+SI+8]的源操作数属于()寻址。

计算机组成原理习题答案第四章

计算机组成原理习题答案第四章

1.指令长度和机器字长有什么关系?半字长指令、单字长指令、双字长指令分别表示什么意思?解:指令长度与机器字长没有固定的关系,指令长度可以等于机器字长,也可以大于或小于机器字长。

通常,把指令长度等于机器字长的指令称为单字长指令;指令长度等于半个机器字长的指令称为半字长指令;指令长度等于两个机器字长的指令称为双字长指令。

2.零地址指令的操作数来自哪里?一地址指令中,另一个操作数的地址通常可采用什么寻址方式获得?各举一例说明。

解:双操作数的零地址指令的操作数来自堆栈的栈顶和次栈顶。

双操作数的一地址指令的另一个操作数通常可采用隐含寻址方式获得,即将另一操作数预先存放在累加器中。

例如,前述零地址和一地址的加法指令。

3.某机为定长指令字结构,指令长度16位;每个操作数的地址码长6位,指令分为无操作数、单操作数和双操作数三类。

若双操作数指令已有K 种,无操作数指令已有L种,问单操作数指令最多可能有多少种?上述三类指令各自允许的最大指令条数是多少?解:X =(24-K)×26-jL26k双操作数指令的最大指令数:24-1。

单操作数指令的最大指令数:15×26-1(假设双操作数指令仅1条,为无操作数指令留出1个扩展窗口)。

无操作数指令的最大指令数:216-212-26。

其中212为表示某条二地址指令占用的编码数,26为表示某条单地址指令占用的编码数。

此时双操作数和单操作数指令各仅有1条。

4.设某机为定长指令字结构,指令长度12位,每个地址码占3位,试提出一种分配方案,使该指令系统包含:4条三地址指令,8条二地址指令,180条单地址指令。

解:4条三地址指令000XXX YYY ZZZ…011XXX YYY ZZZ8条二地址指令100000XXX YYY…100111XXX YYY180条单地址指令101000000XXX…111110011XXX5.指令格式同上题,能否构成:三地址指令4条,单地址指令255条,零地址指令64条?为什么?解:三地址指令4条000XXX YYY ZZZ…011XXX YYY ZZZ单地址指令255条100000000XXX…111111110YYY只能再扩展出零地址指令8条,所以不能构成这样的指令系统。

微机原理第4章练习题及答案

微机原理第4章练习题及答案

第4章 80x86指令系统一、自测练习题㈠选择题1.MOV AX,[BX+SI]的源操作数的物理地址是( )。

A.(DS)×16+(BX)+(SI) B. (ES)×16+(BX)+(SI)C.(SS)×10H+(BX)+(SI) D.(CS)×10H+(BX)+(SI) 2.MOV AX,[BP+Sl]的源操作数的物理地址是( )。

A.(DS)×10H+(BP)+(SI) A. (ES)×16+(BP)+(SI)C.(SS)×16+(BP)+(SI) D.(CS)×10H+(BP)+(SI) 3.MOV AX,ES:[BX+SI]的源操作数的物理地址是( )。

A.(DS)×16+(BX)+SI) B.(ES)×10H+(BX)+(SI)C.(SS)×10H+(BX)+SI) D.(CS)×16+(BX)+(SI)4.JMP WORD PTR[DI]是( )。

A.段内间接转移B.段间间接转移C.段内直接转移D.段间直接转移5.JMP FAR PTR BlOCK(BLOCK是符号地址)是( )。

A.段内间接转移B.段间间接转移C..段内直接转移D.段间直接转移6.INC指令不影响( )标志。

A.OF B.CF C.SF D.ZF7.条件转移指令JNE的测试条件是( )。

A.ZF=1 B.CF=0 C.ZF=0 D.CF=1 8.下列指令中,有语法错误的是( )。

A.MOV [SI],[DI] B.IN AL,DXC.JMP WORD PTR[BX+8] D.PUSH WORD PTR 20[BX+S1] 9.假定(SS)=2000H,(SP)=0100H,(AX)=2107H,执行指令PUSH AX后,存放数据21H的物理地址是()。

A.20102H B.20101H C.200FEH D.200FFH 10.对于下列程序段:AGAIN:MOV AL,[SI]MOV ES:[DI],ALINC SIINC DILOOP AGAIN也可用指令()完成同样的功能。

计算机组成原理(第三版)第 4 章 指令系统汇编

计算机组成原理(第三版)第 4 章 指令系统汇编
OP D
内存
有效地址 EA=[D]; [EA]= DATA; • 例如: ADD A,@[3050H] MOV A,@[3050H]
… EA … DATA
EA
INFO DEPT@ZUFE HANGZHOU.CHINA
5、寄存器寻址方式 ( Register Addressing )
寄存器寻址:操作数存放于指令的操作码所规定的寄存 器中即操作数位于寄存器中,操作数所在的寄存器编号 存放在指令的REG字段中。 • →速度快、指令短,操作数在CPU中; • 指令格式:
内存
有效地址 EA=[PC或IP]+D; [EA]=DATA (指令);
EA→

指令 …
D • 例如:JR SUB1-$
INFO DEPT@ZUFE HANGZHOU.CHINA

10、堆栈寻址 ( Stack Addressing )
• 操作数位于存储器中,操作数所在的存储器地址 EA由堆栈指针寄存器SP隐含指出,通常用于堆栈 指令。 • 堆栈是由若干个连续主存单元组成的先进后出( first in last out,即FILO)存储区,第一个放 入堆栈的数据存放在栈底,最近放入的数据存放 在栈顶。栈底是固定不变的,而栈顶是随着数据 的入栈和出栈在时刻变化。栈顶的地址由堆栈指 针SP指明。 • 一般计算机中,堆栈从高地址向低地址扩展,即 栈底的地址总是大于或等于栈顶的地址,称为堆 栈向上生成;堆栈寻址主要用来暂存中断和子程 序调用时现场数据及返回地址。
OP* MOD REG CPU 寄存器组
R0 … Ri
有效地址 EA=REG; [REG]= DATA; • 例如: EA→ ADD A, Ri ; MOV A, Ri ;

第4章指令系统(考研组成原理)

第4章指令系统(考研组成原理)

4.1.2习题精选一、单项选择题1.以下有关指令系统的说法中错误的是( )。

A.指令系统是一台机器硬件能执行的指令全体B.任何程序运行前都要先转化为机器语言程序C.指令系统是计算机软件、硬件的界面D.指令系统和机器语言是无关的2.在CPU执行指令的过程中,指令的地址由( )给出。

A.程序计数器PC B.指令的地址码手段C.操作系统D.程序员3.下列一地址运算类指令的叙述中,正确的是( )A.仅有一个操作数,其地址由指令的地址码提供B.可能有一个操作数,也可能有两个操作数C.一定有两个操作数,其中一个操作数是隐含的D.指令的地址码字段存放的一定是操作码4.运算型指令的寻址与转移型指令的寻址不同点在于( )。

A.前者取操作数.后者决定程序转移地址B.后者取操作数,前者决定程序转移地址C.前者是短指令,后者是长指令D.前者是长指令,后者是短指令5.程序控制类指令的功能是( )。

A.进行算术运算和逻辑运算B.进行主存与CPU之间的数据传送C.进行CPU和I/O设备之间的数据传送D.改变程序执行的顺序6.下列哪种指令不属于程序控制指令( )。

A.无条件转移指令B.条件转移指令C.中断隐指令D.循环指令7.下列哪种指令用户不准使用( )。

A.循环指令B.转换指令C.特权指令D.条件转移指令8.零地址的运算类指令存指令格式中不给出操作数的地址,参加的两个操作数来自( )。

A.累加器和寄存器B.累加器和暂存器C.堆栈的栈顶和次栈顶单元D.堆栈的栈顶单元和暂存器注意:堆栈指令的访问次数,取决于采用的是软堆栈还是硬堆栈。

如果是软堆栈(堆栈区由内存实现),对于双目运算,需要访问4次内存:取指、取源数1、取源数2、存结果;如果是硬堆栈(堆栈区由寄存器实现),则只需在取指令时访问一次内存。

9.以下叙述错误的是( )。

A.为了充分利用存储空问,指令的K度通常为字节的整数倍B.单地址指令是固定长度的指令C.单字长指令可加快取指令的速度D.单地址指令可能有一个操作数,也可能有两个操作数10.单地址指令中为了完成两个数的算术运算,除地址码指明一个操作数外,另一个数采用( )方式。

计算机组成原理练习题

计算机组成原理练习题

《计算机组成原理》课后练习题第一章计算机系统概论1、从器件角度看,计算机经历了五代变化。

但从系统结构看,至今绝大多数计算机仍属于()计算机。

A 并行B 冯·诺依曼C 智能D 串行2、冯·诺依曼机工作的基本方式的特点是()。

A 多指令流单数据流B 按地址访问并顺序执行指令C 堆栈操作D 存贮器按内容选择地址3、在下面描述的汇编语言基本概念中,正确的表述是()。

A 对程序员的训练要求来说,需要硬件知识B 汇编语言对机器的依赖性高C 用汇编语言编写程序的难度比高级语言小D 汇编语言编写的程序执行速度比高级语言慢4、计算机硬件能直接执行的语言有()。

A 符号语言B 机器语言C 机器语言与汇编语言D 汇编语言5、下面说法不正确的是()。

A 任何可以由软件实现的操作也可以用硬件来实现B 直接面向高级语言的机器目前已经实现C 固件就功能而言类似于软件,而从形态上来说又类似于硬件D 在计算机系统的层次结构中,微程序属于硬件级,其他四级都是软件级6、计算机系统的层次结构从下至上可分为五级,即微程序设计级或逻辑电路级、一般机器级、操作系统级、()级、()级。

7、取指周期中从内存读出的信息流称为()流、执行周期中从内存读出的信息流称为()流。

《计算机组成原理》课后练习题第二章运算器1、某机字长32位,其中1位表示符号位。

若用定点整数表示,则最小负整数为()。

A -(231-1)B -(230-1)C -(231+1)D -(230+1)2、以下有关运算器的描述,()是正确的。

A 只做加法运算B 只做算术运算C 算术运算与逻辑运算D 只做逻辑运算3 、在定点二进制运算器中,减法运算一般通过()来实现。

A 原码运算的二进制减法器B 补码运算的二进制减法器C 原码运算的十进制加法器D 补码运算的二进制加法器4、下列数中最小的数是()。

A (101001)2B (52)8C (101001)BCD D (233)165、计算机系统中采用补码运算是为了()。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
B.可能有一个操作数,也可能有两个操作数 C.一定有两个操作数,另一个是隐含的 D.指令的地址码字段存放的一定是操作码
第4章 指令系统
【例4.3】一个计算机系统采用32位单字长指令, 地址码为12位,如果定义了250条二地址指令, 那么单地址指令的条数有( )
A.4K B.8K C.16K D.24K
第4章 指令系统
某机字长16位,存储器直接寻址空间128字, 变址时的位移量为-64~63,16个通用寄存器可 作为变址寄存器。设计一套指令系统格式,满 足下列寻址类型的要求。
(3)寄存器寻址的二地址指令8条。
OP(8)
11110000 11110001 …… 11110111
第4章 指令系统
某机字长16位,存储器直接寻址空间128字, 变址时的位移量为-64~63,16个通用寄存器可 作为变址寄存器。设计一套指令系统格式,满 足下列寻址类型的要求。
(2)变址寻址的一地址指令6条。
OP(5)
11000 11001 …… 11101
Rx(4)
A(7)
10. 堆栈寻址
(1) 堆栈的特点
硬堆栈 堆栈
软堆栈
多个寄存器 指定的存储空间
先进后出(一个入出口) 栈顶地址 由 SP 指出
进栈 (SP)– 1 SP 出栈 (SP)+ 1 SP
SP
1FFFH 2000 H
12F0F00F H
–1
进栈
栈顶 栈顶
SP
1FFFH 2000 H
12F0F00F HH
+1
A.先使(SP)+1,再读出数据 B.先读出数据,再使(SP)+1 C.先使(SP)-1 ,再读出数据 D.先读出数据,再使(SP)-1
第4章 指令系统
【通考真题1】 某机器字长16位,主存按字节编址,
转移指令采用相对寻址,由两个字节组 成,第一个字节为操作码字段,第二字 节为相对位移量字段。假定取指令时, 每取一个字节PC自动加1。若某转移指令 所在主存地址为2000H,相对位移量字段 的内容为06H,则该转移指令成功转移后 的目标地址是( )
第4章 指令系统
【例4.8】假设寄存器R中的数值为200,主存地 址为200和300的地址单元中存放的内容分别是 300和400,若访问到的操作数是200,则寻址 方式是( )
A.直接寻址200 B.寄存器间接寻址(R) C.存储器间接寻址(200) D.寄存器寻址R
分析:直接寻址200和寄存器间接寻址(R)获得的 操作数是300,存储器间接寻址(200)获得操作 数是400,寄存器寻址R获得操作数200.
第4章 指令系统
【例4.4】设机器字长32位,一个容量 为16MB的存储器,CPU按半字寻址, 其寻址单元数是( )
A.224 B.223 C.222 D.221
【例4.5】设机器字长32位,一个容量 为16MB的存储器,若按双字编址, 其寻址单元数是( )
A.8MB B.2M C.4M D.16M
出栈
栈顶 栈顶
… …
栈底
栈底
(2) 堆栈寻址举例
主存
ACC 15
栈顶
SP
200H
200H
X
PUSH A 前
栈底
ACC 15 SP 1FFH
主存
栈顶 1FFH 15 200H X
PUSH A 后
栈底
ACC Y SP 1FFH
栈顶 1FFH
200H
主存
15 X
POP A 前
栈底
ACC 15 SP 200H
(800) (500) (300) (325) (900) (400)
(7)寄存器R1间接寻址
(700)
第4章 指令系统
【例4.11】堆栈寻址中,设A为累加器, SP为堆栈指示器,MSP为SP指示的 栈顶单元,如果进栈操作的动作顺 序是(A)MSP,(SP)-1SP,那么 出栈操作动作顺序应为( )
储位置,该指令将指定的内容装入累加器AC中。指令的第一个字
指定操作码和寻址方式,第二字是地址部分。寄存器与主存内容
示意图如图所示,指令的寻址方式字段可指定任何一种寻址方式。
问在下列寻址方式中,装入A(3)间接寻址 (4)相对寻址 (5)变址寻址 (6)寄存器R1寻址
(2)转移指令的目标地址范围是多少?(0~216-1)
(3)若操作码0010B表示加法操作(助记符add),寄存 器R4和R5的编号分别为100B和101B,R4的内容 为 1234H , R5 的 内 容 为 5678H , 地 址 1234H 的 内 容为5678H,地址5678H中的内容为1234H,则汇 编语句为”add(R4),(R5)+”(逗号前为源操作数,逗 号后为目的操作数)对应的机器码是什么(用十六进 制表示)?该指令执行后,哪些寄存器和存储单元 的内容会改变?改变后的内容是什么?(2315H, (R5)=5679H,存储单元5678H的内容变为68ACH)
第4章 指令系统
【例4.6】在一个36位长的指令系统中, 设计一个扩展操作码,使之能表示 下列指令:
(1)7条具有两个15位地址和一个3位 地址的指令;
(2)500条具有一个15位地址和一个3 位地址的指令;
(3)50条无地址指令。
(1) (2) (3)
OP (3) 000 … 010
的一地址指令,还能容纳多少条?
第4章 指令系统
某机字长16位,存储器直接寻址空间128字, 变址时的位移量为-64~63,16个通用寄存器可 作为变址寄存器。设计一套指令系统格式,满 足下列寻址类型的要求。
(1)直接寻址的二地址指令3条。
OP(2)
00 01 10
A1(7)
A2(7)
第4章 指令系统例题
【例4.1】某计算机存储器按字(16位)编址,每取 出一条指令后PC值自动加1,说明其指令长度 是( )。
A.1个字节 B.2个字节 C.3个字节 D.4个字节
第4章 指令系统
【例4.2】在关于一地址运算类指令的叙述中, 正确的是( )
A.仅有一个操作数,其地址由指令的地址码提 供
式种类相对CISC少
第4章 指令系统
【通考真题3】 某计算机字长16位,主存地址空间大小为
128KB,按字编址,采用定长指令格式,指令各 字段定义如下:
转移指令采用相对寻址方式,相对偏移是用补码 表示,寻址方式定义如下:
第4章 指令系统
(1)该指令系统最多可有多少条指令?该计算机最多 有多少个通用寄存器?存储器地址寄存器(MAR)和 存储器数据寄存器(MDR)至少各需多少位?(16,8, 16,16)
… 000000000000000000
第4章 指令系统
【例4.7】某机字长16位,存储器直接寻址空间 128字,变址时的位移量为-64~63,16个通用寄存 器可作为变址寄存器。设计一套指令系统格式, 满足下列寻址类型的要求。 (1)直接寻址的二地址指令3条。 (2)变址寻址的一地址指令6条。 (3)寄存器寻址的二地址指令8条。 (4)直接寻址的一地址指令12条。 (5)零地址指令32条。 试问还有多少种代码未用?若安排寄存器寻址
第4章 指令系统
某机字长16位,存储器直接寻址空间128字,变 址时的位移量为-64~63,16个通用寄存器可作为 变址寄存器。设计一套指令系统格式,满足下列 寻址类型的要求。
试问还有多少种代码未用?若安排寄存器寻址的 一地址指令,还能容纳多少条?(480,30)
OP(12)
Ri(4)
1111111000011111 1111111111111111
OP1 (3)
A1 (15) OP2(15)
000000000000000
111

000000111110011
OP1 (3)
OP2(15)
000000111110100
111

000001000100101
第4章 指令系统
A2 (15)
A3 (3)
A1 (15)
A2 (3)
OP3(18) 000000000000000000
A.2006H B.2007H C.2008H D.2009H
第4章 指令系统
【通考真题2】 下列关于RISC的叙述中,错误的是( )
A.RISC普遍采用微程序控制器 B.RISC大多数指令在一个时钟周期内
完成 C.RISC 的 内 部 通 用 寄 存 器 数 量 相 对
CISC多 D.RISC的指令数、寻址方式和指令格
Ri(4)
Rj(4)
第4章 指令系统
某机字长16位,存储器直接寻址空间128字, 变址时的位移量为-64~63,16个通用寄存器可 作为变址寄存器。设计一套指令系统格式,满 足下列寻址类型的要求。
(4)直接寻址的一地址指令12条。
OP(9)
111110000 111110001 …… 111111011
第4章 指令系统
【例4.9】在变址寄存器寻址方式中, 若 变 址 寄 存 器 的 内 容 是 4E3CH , 指 令中的形式地址是63H,则它对应的 有效地址是( )
A.63H B.4D9FH C.4E3CH D.4E9FH
第4章 指令系统
【例4.10】一条双字长的LOAD指令存储在地址为200和201的存
A(7)
第4章 指令系统
某机字长16位,存储器直接寻址空间128字, 变址时的位移量为-64~63,16个通用寄存器可 作为变址寄存器。设计一套指令系统格式,满 足下列寻址类型的要求。
(5)零地址指令32条。
OP(16)
1111111000000000 1111111000000001 …… 1111111000011111
相关文档
最新文档