第4章指令系统层习题参考解答-汇编语言与计算机组成原理 答案
《计算机原理学习指导》第四章指令系统综合练习题参考答案
《计算机原理学习指导》第四章指令系统综合练习题参考答案一、填空题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、计算机指令中一般包含哪些字段?分别是什么含义?答:计算机指令中一般包含地址码和操作码两部分,地址码表示指令的操作对象,指出操作数的地址,操作码表示操作的性能及功能。
计算机组成原理与汇编语言课后习题及作业答案
《计算机组成原理与汇编语言》课后习题及作业答案王建东2006年9月第一章习题参考答案1、什么是存储程序工作方式?(P.2.)答:(1) 事先编制程序(2) 实现存储程序(3) 自动、连续地执行程序2、采用数字化方法表示信息有哪些优点?(P.5.)答:(1) 抗干扰能力强,可靠性高(2) 在表示数值时,可以获得很宽的表示范围以及很高的精度。
(3) 数字化的信息可以存储,信息传送也比较容易实现。
(4) 可表示的信息类型与范围及其广泛,几乎没有限制。
(5) 能用逻辑代数等数字逻辑技术进行信息处理,着就形成了计算机硬件设计的基础。
3、如果有7X9点阵显示出字符A的图像,请用9个七位二进制代码表示A的点阵信息。
0000000000100000101000100010011111001000100100010010001000000004、数字计算机的主要特点是什么?(P.16.)答:(1) 能在程序控制下自动连续地工作(2) 运算速度快(3) 运算精度高(4) 具有很强的信息存储能力(5) 通用性强,应用领域极其广泛5、衡量计算机的基本指标有哪些?(P.17.)答:(1)基本字长(2)数据通路宽度(3)运算速度(4) 主存储器容量(5) 外存容量(6) 配置的外围设备及其性能(7) 系统软件配置6、举出一种实际计算机,列举出各部件、设备的技术性能及常配置的软件?略7、软件系统一般包含哪些部分?列举你熟悉的三种系统软件。
(P.9.)答:系统软件是一组使计算机良好运行而编制的基础软件。
它包括:(1)操作系统如:Windows 2000,Linux,Unix(2)编译程序、解释程序如:C++编译程序,Peal解释程序(3)各种软件平台如:数据库管理系统8、对源程序的处理有哪两种基本方式?(P.11.)答:对源程序的处理有解释和编译两种类型。
解释方式是边解释边执行。
如:BASIC 它的优点是支持人机对话方式的程序设计,可以边执行边修改;所需要的主存空间较小。
计算机组成原理课后习题-参考答案
习题参考答案
5-2:计算机为什么要设置时序部件? 周期、节拍、脉冲三级时序关系如何 表示?
一条指令运行的各种操作控制信号在时间上有严格 的定时关系, 的定时关系,时序部件用以控制时序以保证指令 的正确执行。 的正确执行。 将指令周期划分为几个不同的阶段, 将指令周期划分为几个不同的阶段,每个阶段称为 一个机器周期。 一个机器周期。 一个机器周期又分为若干个相等的时间段, 一个机器周期又分为若干个相等的时间段,每个时 时间段称为一个时钟周期(节拍)。 时间段称为一个时钟周期(节拍)。 在一个时钟周期(节拍)内可设置几个工作脉冲, 在一个时钟周期(节拍)内可设置几个工作脉冲, 用于寄存器的清除、接收数据等工作。 用于寄存器的清除、接收数据等工作。
9
习题什么特点?
依据控制器中的时序控制部件和微操作控制信号形 成部件的具体组成与运行原理不同,通常把控制 成部件的具体组成与运行原理不同, 器区分为微程序控制器和硬布线控制器两大类。 器区分为微程序控制器和硬布线控制器两大类。 微程序控制方式是用一个ROM做为控制信号产生 微程序控制方式是用一个 做为控制信号产生 的载体, 中存储着一系列的微程序, 的载体,ROM中存储着一系列的微程序,组成微 中存储着一系列的微程序 程序的微指令代码产生相应的操作控制信号, 程序的微指令代码产生相应的操作控制信号,这 是一种存储逻辑型的控制器。方便修改和扩充, 是一种存储逻辑型的控制器。方便修改和扩充, 但指令执行速度较慢。 但指令执行速度较慢。 硬布线控制方式采用组合逻辑电路实现各种控制功 在制造完成后, 能,在制造完成后,其逻辑电路之间的连接关系 就固定下来,不易改动。其运行速度快, 就固定下来,不易改动。其运行速度快,但构成 复杂。 复杂。
13
习题参考答案
计算机组成原理第四章答案
第4章习题参考答案1.ASCII码是7位,如果设计主存单元字长为32位,指令字长为12位,是否合理?为什么?答:不合理。
指令最好半字长或单字长,设16位比较合适。
一个字符的ASCII 是7位,如果设计主存单元字长为32位,则一个单元可以放四个字符,这也是可以的,只是在存取单个字符时,要多花些时间而已,不过,一条指令至少占一个单元,但只占一个单元的12位,而另20位就浪费了,这样看来就不合理,因为通常单字长指令很多,浪费也就很大了。
2.假设某计算机指令长度为32位,具有双操作数、单操作数、无操作数三类指令形式,指令系统共有70条指令,请设计满足要求的指令格式。
答:字长32位,指令系统共有70条指令,所以其操作码至少需要7位。
双操作数指令单操作数指令无操作数指令3.指令格式结构如下所示,试分析指令格式及寻址方式特点。
答:该指令格式及寻址方式特点如下:(1) 单字长二地址指令。
(2) 操作码字段OP可以指定26=64种操作。
(3) 源和目标都是通用寄存器(可分指向16个寄存器)所以是RR型指令,即两个操作数均在寄存器中。
(4) 这种指令结构常用于RR之间的数据传送及算术逻辑运算类指令。
4.指令格式结构如下所示,试分析指令格式及寻址方式特点。
15 10 9 8 7 4 3 0答:该指令格式及寻址方式特点如下:(1)双字长二地址指令,用于访问存储器。
(2)操作码字段OP可以指定26=64种操作。
(3)RS型指令,一个操作数在通用寄存器(选择16个之一),另一个操作数在主存中。
有效地址可通过变址寻址求得,即有效地址等于变址寄存器(选择16个之一)内容加上位移量。
5.指令格式结构如下所示,试分析指令格式及寻址方式特点。
答:该指令格式及寻址方式特点如下:(1)该指令为单字长双操作数指令,源操作数和目的操作数均由寻址方式和寄存器构成,寄存器均有8个,寻址方式均有8种。
根据寻址方式的不同,指令可以是RR型、RS型、也可以是SS型;(2)因为OP为4位,所以最多可以有16种操作。
第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. 画出示意图,简述保护模式下(无分页机制)存储器寻址的过程。
采用对用户程序透明的机制由选择子从描述子表中选择相应的描述子,得到欲访问段的段基址、段限等有关信息,再根据偏移地址访问目标存储单元。
计算机组成原理课后答案(白中英第四版)第四章
第四章1.不合理。
指令最好半字长或单字长,设16位比较合适。
2.3.(1)RR 型指令(2)寄存器寻址(3)单字长二地址指令(4)操作码字段OP 可以指定26=64种操作4.(1)双字长二地址指令,用于访问存储器。
操作码字段可指定64种操作。
(2)RS 型指令,一个操作数在通用寄存器(共16个),另一个操作数在主存中。
(3)有效地址可通过变址寻址求得,即有效地址等于变址寄存器(共16个)内容加上位移量。
5.(1)双操作数指令(2)23=8种寻址方式(3)24=16种操作6.(1)直接寻址方式(2)相对寻址方式(3)变址寻址方式(4)基址寻址方式(5)间接寻址方式(6)变址间接寻址方式7.40条指令需占6位,26=64,剩余24条可作为扩充4种寻址方式需占2位剩余8位作为地址X = 00 直接寻址方式 E = DX = 01 立即寻址方式X = 10 变址寻址方式 E = (R )+DX = 11 相对寻址方式 E = (PC )+D2位E = PC H -DX = 01 立即寻址方式X = 10 直接寻址方式 E = D(2)PC 高8位形成主存256个页面,每页K M 42561 个单元 (3)寻址模式X = 11尚未使用,故可增加一种寻址方式。
由于CPU 中给定的寄存器中尚可使用PC ,故可增加相对寻址方式,其有效地址E = PC+D ,如不用相对寻址,还可使用间接寻址,此时有效地址E = (D )。
当位移量变成23位时,寻址模式变成3位,可有更多的寻址方式。
9. 16个通用寄存器占4位,64种操作占6位,剩下22位用于存储器地址,采用R为基址寄存器寻址,地址=(R)+D 当基址最大,D也是最大的时候,寻址能力最大而寄存器是32位的,故最大存储空间是232+222 = 4GB+4MB。
11.C12.(1)寄存器(2)寄存器间接(3)立即(4)直接(5)相对、基值、变址。
计算机组成原理课后习题参考答案
计算机组成原理答案第一章计算机系统概论1.比较数字计算机和模拟计算机的特点。
解:模拟计算机的特点:数值由连续量来表示,运算过程是连续的;数字计算机的特点:数值由数字量(离散量)来表示,运算按位进行。
两者主要区别见P1 表1.1。
2.数字计算机如何分类?分类的依据是什么?解:分类:数字计算机分为专用计算机和通用计算机。
通用计算机又分为巨型机、大型机、中型机、小型机、微型机和单片机六类。
分类依据:专用和通用是根据计算机的效率、速度、价格、运行的经济性和适应性来划分的。
通用机的分类依据主要是体积、简易性、功率损耗、性能指标、数据存储容量、指令系统规模和机器价格等因素。
4.冯. 诺依曼型计算机的主要设计思想是什么?它包括哪些主要组成部分?解:冯. 诺依曼型计算机的主要设计思想是:存储程序和程序控制。
存储程序:将解题的程序(指令序列)存放到存储器中;程序控制:控制器顺序执行存储的程序,按指令功能控制全机协调地完成运算任务。
主要组成部分有:(控制器、运算器)(CPU的两部分组成)、存储器、输入设备、输出设备(I/O设备)。
5.什么是存储容量?什么是单元地址?什么是数据字?什么是指令字?解:存储容量:指存储器可以容纳的二进制信息的数量,通常用单位KB、MB、GB来度量,存储容量越大,表示计算机所能存储的信息量越多,反映了计算机存储空间的大小。
单元地址:简称地址,在存储器中每个存储单元都有唯一的地址编号,称为单元地址。
数据字:若某计算机字是运算操作的对象即代表要处理的数据,则称数据字。
指令字:若某计算机字代表一条指令或指令的一部分,则称指令字。
6.什么是指令?什么是程序?解:指令:计算机所执行的每一个基本的操作。
程序:解算某一问题的一串指令序列称为该问题的计算程序,简称程序。
7.指令和数据均存放在内存中,计算机如何区分它们是指令还是数据?解:一般来讲,在取指周期中从存储器读出的信息即指令信息;而在执行周期中从存储器中读出的信息即为数据信息。
计算机汇编语言第四章第五章答案
本答案经本人简单作答、整理、修改(并是标准答案),仅供同学参考,欢迎同学提出宝贵意见。
4.10给定(BX)=637DH,(SI)=2A9BH,位移量D=7237H,试确定在以下各种寻址方式下的有效地址是什么答案:(1)立即寻址没有 IP的内容(2)直接寻址 7237H ;MOV AX,[7237H](3)使用BX的寄存器寻址没有 ;MOV AX,BX(4)使用BX的间接寻址 637DH ;MOV AX,[BX](5)使用BX的寄存器相对寻址 0D5B4H ;MOV AX,D[BX](6) 基址变址寻址 8E18H ;MOV AX,[BX][SI](7)相对基址变址 004FH ;MOV AX,D[BX][SI]4.11.求执行两条指令后,各标志位的状态MOV AL,91 ;执行后,(AL)=91=5BHADD AL,0BAH加法执行如下:0BA H 1011 1010+ 05B H 0101 1011115 H 1 0001 0101CF:显然最高位产生了进位(两个加数都是两位的,和却有三位),CF=1AF:低四位向高四位产生了进位(A+B产生进位),AF=1ZF:运算结果不为0,ZF=0SF:运算结果最高位为0(高四位:1H=0001B),SF=0OF:负+正=正(两个加数的符号位不同),没有溢出,OF=04-12(1)MOV AL,0F5H 正确(2)ADD [BX][BP],BX 错误,不能同时使用[BX][BP]进行寻址(3)CMP AL,100H 错误,AL为8位,100H大于8位,类型不匹配。
(4)TEST [BP],DL 正确(5)ADC 15,CL 错误,目的操作数不能是立即数(6)SUB [DI],DA_WORD 错误,两个操作数不能同时是存储器操作数。
(7)OR CH,CL 正确(8)MOV AL,1000H 错误,AL为8位,1000H为16位,类型不匹配。
(9)SAR 10H[DI],2 错误,AL为8位,移位多次必须CL中。
计算机组成与设计第三版 第四章课后答案
4.6 运算器内的乘商寄存器的移位操作与通用寄存器的移 位操作之间应有什么样的关联关系吗?为什么会是这样?
பைடு நூலகம்
乘除寄存器的移位操作与通用寄存器的移位操作是联合 移位,没有乘除寄存器单独移位功能。当通用寄存器本 身移位时,乘除寄存器不受影响。
4.8.以教学计算机为例,说明应如何控制与操作运算器完成指定的数据运算、 传送功能,为什么必须在Am2901芯片之外解决向运算器提供最低位的进位信 号,最低、最高位的移位输入信号,以及状态位的接受与记忆问题。设计完 成如下操作功能的操作步骤和必须提供的信号:把100送入R0,R0的内容送入 R1,完成R0-R1并存入R0,R1的内容减1,R1的内容送入Q,R1和Q与C联合 右移一位。
4.8.以教学计算机为例,说明应如何控制与操作运算器完成指定的数据运算、 传送功能,为什么必须在Am2901芯片之外解决向运算器提供最低位的进位信 号,最低、最高位的移位输入信号,以及状态位的接受与记忆问题。设计完 成如下操作功能的操作步骤和必须提供的信号:把100送入R0,R0的内容送入 R1,完成R0-R1并存入R0,R1的内容减1,R1的内容送入Q,R1和Q与C联合 右移一位。
4.13.假定X=0.0110011*211,Y=0.1101101*2-10(此处的数均为二进制)。 (1)浮点数阶码用4位移码、尾数用8位原码表示(含符号位),写出 该浮点数能表示的绝对值最大、最小的(正数和负数)数值; (2)写出X、Y正确的浮点数表示(注意,此处预设了个小陷阱); (3)计算X+Y; (4)计算X*Y。 4)计算X*Y A:阶码相加:[X+Y]移=[X]移+[Y]补=01 011+11 110=01 001 (符号位10第1位为0,不溢出;00时上溢,01时下溢) B:尾数相乘结果:0 1010110 110111 C:已满足规格化要求,不需左规,尾数不变,阶码仍为001 D:舍入处理:按0舍1入规则,尾数之后的6位110111舍去,尾数 +1=0 1010111 所以,X*Y最终浮点数格式的结果: 1 001 0 1010111,即 0.1010111*21
计算机组成原理课后答案(白中英第四版)第四章
计算机组成原理课后答案(⽩中英第四版)第四章第四章1.不合理。
指令最好半字长或单字长,设16位⽐较合适。
2.3.(1)RR 型指令(2)寄存器寻址(3)单字长⼆地址指令(4)操作码字段OP 可以指定26=64种操作4.(1)双字长⼆地址指令,⽤于访问存储器。
操作码字段可指定64种操作。
(2)RS 型指令,⼀个操作数在通⽤寄存器(共16个),另⼀个操作数在主存中。
(3)有效地址可通过变址寻址求得,即有效地址等于变址寄存器(共16个)内容加上位移量。
5.(1)双操作数指令(2)23=8种寻址⽅式(3)24=16种操作6.(1)直接寻址⽅式(2)相对寻址⽅式(3)变址寻址⽅式(4)基址寻址⽅式(5)间接寻址⽅式(6)变址间接寻址⽅式7.40条指令需占6位,26=64,剩余24条可作为扩充4种寻址⽅式需占2位剩余8位作为地址X = 00 直接寻址⽅式 E = DX = 01 ⽴即寻址⽅式X = 10 变址寻址⽅式 E = (R )+DX = 11 相对寻址⽅式 E = (PC )+D2位E = PC H -DX = 01 ⽴即寻址⽅式X = 10 直接寻址⽅式 E = D(2)PC ⾼8位形成主存256个页⾯,每页K M 42561 个单元 (3)寻址模式X = 11尚未使⽤,故可增加⼀种寻址⽅式。
由于CPU 中给定的寄存器中尚可使⽤PC ,故可增加相对寻址⽅式,其有效地址E = PC+D ,如不⽤相对寻址,还可使⽤间接寻址,此时有效地址E = (D )。
当位移量变成23位时,寻址模式变成3位,可有更多的寻址⽅式。
9. 16个通⽤寄存器占4位,64种操作占6位,剩下22位⽤于存储器地址,采⽤R为基址寄存器寻址,地址=(R)+D 当基址最⼤,D也是最⼤的时候,寻址能⼒最⼤⽽寄存器是32位的,故最⼤存储空间是232+222 = 4GB+4MB。
11.C12.(1)寄存器(2)寄存器间接(3)⽴即(4)直接(5)相对、基值、变址。
微机原理与汇编语言程序设计课后习题参考答案
第一章习题与参考答案1. 微处理器,微型计算机和微型计算机系统三者之间有何区别?答:微处理器即CPU,它包括运算器、控制器、寄存器阵列和内部总线等部分,用于实现微型计算机的运算和控制功能,是微型计算机的核心;一台微型计算机由微处理器、内存储器、I/O接口电路以及总线构成;微型计算机系统则包括硬件系统和软件系统两大部分,其中硬件系统又包括微型计算机和外围设备;由此可见,微处理器是微型计算机的重要组成部分,而微型计算机系统又主要由微型计算机作为其硬件构成。
2. CPU在内部结构上由哪几部分构成?CPU应具备哪些主要功能?答:CPU在内部结构上由运算器、控制器、寄存器阵列和内部总线等各部分构成,其主要功能是完成各种算数及逻辑运算,并实现对整个微型计算机控制,为此,其内部又必须具备传递和暂存数据的功能。
3. 累加器和其它通用寄存器相比有何不同?答:累加器是通用寄存器之一,但累加器和其它通用寄存器相比又有其独特之处。
累加器除了可用做通用寄存器存放数据外,对某些操作,一般操作前累加器用于存放一个操作数,操作后,累加器用于存放结果。
4. 微型计算机的总线有哪几类?总线结构的特点是什么?答:微型计算机的总线包括地址总线、数据总线和控制总线三类,总线结构的特点是结构简单、可靠性高、易于设计生产和维护,更主要的是便于扩充。
5. 举出10个微型计算机应用的例子。
答:略6. 计算机I/O接口有何用途?试列出8个I/O接口。
答:计算机I/O接口是连接计算机和外部设备的纽带和桥梁,它主要用于协调和控制计算机与外设之间的信息流通和交换。
例如:串行通讯口(COM口)、并行打印机口、软盘驱动器接口、硬盘驱动器接口、光驱接口、显示器接口、音响设备接口、其它通用设备接口(USB、SCSI等)。
7. 现在,计算机主板上一般都包括哪些I/O接口?I/O接口卡如何与主板相连?答:现在,计算机主板上一般包括串行通讯口、并行打印口、软盘驱动器接口、硬盘驱动器接口、光驱接口、USB接口等。
汇编语言课后习题及答案 按章节 超全面
`00第一章课外练习题一、单项选择题:1.从键盘输入的字符,在计算机内存储的是它的(A)(A)二进制编码(B)四进制编码(C)八进制编码(D)十六进制编码2.6位无符号二进制数能表示的最大十进制数是(B)。
(A)64 (B)63 (C)32 (D)31 3.十进制数269变换为十六进制数是(C)。
(A)10B (B)10C (C)10D (D)10E 4.8位的微型计算机系统是以16位来表示地址,则该微机系统有(C)个地址空间。
(A)255 (B)65535 (C)65536 (D)1048576 5.8位有符号二进制数能表示的最大十进制数是(D)。
(A)256 (B)255 (C)128 (D)127 6.十六进制数88H,可表示成下面几种形式,请找出错误的表示(D)。
(A)无符号十进制数136 (B)带符号十进制数-120(C)压缩型BCD十进制数88 (D)8位二进制数-8的补码表示7.有一个数值152,它与十六进制数6A相等,那么该数值是(B)。
(A)二进制数(B)八进制数(C)十进制数(D)四进制数8.7位ASCII总共可表示(C)个符号。
(A)256 (B)127 (C)128 (D)255 9.4B的字长是(C)。
(A)8位(B)16位(C)32位(D)64位二、判断题(判断每题正误,对的在题后括号内划“√”,错的划“×”)1.字节通常用英文单词“Bit”来表示(×)。
2.目前广泛使用的Pentium计算机其字长为5个字节(×)。
3.存储器中将8个相邻的二进制位作为一个单位,这种单位称为字节(√)。
4.微型计算机的字长并不一定是字节的整数倍(×)。
三、填空题1.8位有/无符号整数的表示范围写成16进制形式为(80~~7F)/(00~~FF)。
2.己知:计算机中有一个“01100001”编码,如果把它看作是无符号数,它是十进制什么数(97);如果认为它是BCD,则表示(01100001)BCD;认为它是某个ASCII,则代表(a)字符。
ibmpc汇编语言第四章课后详细习题答案
ibmpc汇编语言第四章课后详细习题答案4.1指出下列指令的错误:(1) MOV AH, BX ;寄存器类型不匹配(2) MOV [BX], [SI] ;不能都是存储器操作数(3) MOV AX, [SI][DI] ;[SI]和[DI]不能一起使用(4) MOV MYDAT [BX][SI], ES:AX ;AX寄存器不能使用段超越(5) MOV BYTE PTR [BX], 1000 ;1000超过了一个字节的范围(6) MOV BX, OFFSET MYDAT [SI] ;MYDAT [SI]已经是偏移地址,不能再使用OFFSET(7) MOV CS, AX ;CS不能用作目的寄存器(8) MOV ECX, AX ;两个操作数的数据类型不同答:见注释。
4.2下面哪些指令是非法的(假设OP1,OP2是已经用DB定义的变量)(1) CMP 15, BX ;错,立即数不能作为目的操作数(2) CMP OP1, 25(3) CMP OP1, OP2 ;错,不能都是存储器操作数(4) CMP AX, OP1 ;错,类型不匹配,应为CMP ax, word ptrop1答:见注释。
4.3假设下列指令中的所有标识符均为类型属性为字的变量,请指出下列哪些指令是非法的它们的错误是什么(1) MOV BP, AL ;错,寄存器类型不匹配(2) MOV WORD_OP [BX+4*3][DI], SP(3) MOV WORD_OP1, WORD_OP2 ;错,不能都是存储器操作数(4) MOV AX, WORD_OP1[DX] ;错,DX不能用于存储器寻址(5) MOV SAVE_WORD, DS(6) MOV SP, SS:DATA_WORD [BX][SI](7) MOV [BX][SI], 2 ;错,[BX][SI]未指出数据类型(8) MOV AX, WORD_OP1+WORD_OP2(9) MOV AX, WORD_OP1-WORD_OP2+100(10)MOV WORD_OP1, WORD_OP1-WORD_OP2答:见注释。
ibmpc汇编语言第四章课后详细习题答案
4.1指出下列指令的错误:(1) MOV AH, BX ;寄存器类型不匹配(2) MOV [BX], [SI] ;不能都是存储器操作数(3) MOV AX, [SI][DI] ;[SI]和[DI]不能一起使用(4) MOV MYDAT [BX][SI], ES:AX ;AX寄存器不能使用段超越(5) MOV BYTE PTR [BX], 1000 ;1000超过了一个字节的范围(6) MOV BX, OFFSET MYDAT [SI] ;MYDAT [SI]已经是偏移地址,不能再使用OFFSET(7) MOV CS, AX ;CS不能用作目的寄存器(8) MOV ECX, AX ;两个操作数的数据类型不同答:见注释。
4.2下面哪些指令是非法的(假设OP1,OP2是已经用DB定义的变量)(1) CMP 15, BX ;错,立即数不能作为目的操作数(2) CMP OP1, 25(3) CMP OP1, OP2 ;错,不能都是存储器操作数(4) CMP AX, OP1 ;错,类型不匹配,应为CMP ax, word ptrop1答:见注释。
4.3假设下列指令中的所有标识符均为类型属性为字的变量,请指出下列哪些指令是非法的它们的错误是什么(1) MOV BP, AL ;错,寄存器类型不匹配(2) MOV WORD_OP [BX+4*3][DI], SP(3) MOV WORD_OP1, WORD_OP2 ;错,不能都是存储器操作数(4) MOV AX, WORD_OP1[DX] ;错,DX不能用于存储器寻址(5) MOV SAVE_WORD, DS(6) MOV SP, SS:DATA_WORD [BX][SI](7) MOV [BX][SI], 2 ;错,[BX][SI]未指出数据类型(8) MOV AX, WORD_OP1+WORD_OP2(9) MOV AX, WORD_OP1-WORD_OP2+100(10)MOV WORD_OP1, WORD_OP1-WORD_OP2答:见注释。
汇编语言程序设计教程(第二版)习题参考答案
汇编语言程序设计教程(第二版)习题参考答案第1章计算机基础知识1.计算机的应用分哪几个方面,请举例说明书中未提到的领域的计算机应用。
科学计算、数据处理、计算机控制、计算机辅助设计、人工智能、企业管理、家用电器、网络应用。
书中未提及的如:远程教育、住宅小区控制、飞行系统控制与管理等。
2.简述计算机的发展过程,请查阅相关资料,列出微机的发展过程。
电子管、晶体管、集成电路、大规模集成电路以IBM为例,微机的发展:4004、8008、8080、8086/8088、80286、80386、80486、Pentium 系列3.计算机的字长是怎么定义的,试举例说明。
计算机能同时处理二进制信息的位宽定义为计算机的字长。
如8086能同时进行16位二进制数据的运算、存储和传输等操作,该机器的字长为16位。
4.汇编语言中的基本数据类型有哪些?数值型数据和非数值型数据。
非数值数据如字符、字符串、逻辑值等。
(1)7BCH=011110111100B=1980D(2)562Q=101110010B=370D(3)90D=01011010B=5AH(4)1110100.111B=164.7Q=74.EH30H~39H 41H~5AH 61H~7AH9.在汇编语言中,如何表示二进制、八进制、十进制和十六进制的数值?用相应进制的数值加上进制标记即可。
二进制用B,如10101010B八进制用Q,如437Q。
十进制用D或不用,如54D,或54。
十六进制用H,如27A8H10.完成下列二进制数的加减运算。
(1)10101010 + 11110000 (2)11001100 + 01010100=110011010 =100100000(3)11011010 - 01010010 (4)11101110 - 01001101=10001000 =1010000111.完成下列十六进制数的加减运算。
(1)0FEA9 - 8888=7621H (2)0FFFF - 1234=EDCBH(3)0EAC0 + 0028=EAE8H (4)3ABC + 1678=5134H12.完成下列BCD码的运算。
计算机组成原理第四版课后题答案三,四章
第三章1.有一个具有20位地址和32位字长的存储器,问:(1)该存储器能存储多少个字节的信息?(2)如果存储器由512K×8位SRAM芯片组成,需要多少芯片?(3)需要多少位地址作芯片选择?解:(1)∵ 220= 1M,∴该存储器能存储的信息为:1M×32/8=4MB (2)(1000/512)×(32/8)= 8(片)(3)需要1位地址作为芯片选择。
2. 已知某64位机主存采用半导体存储器,其地址码为26位,若使用256K×16位的DRAM芯片组成该机所允许的最大主存空间,并选用模块板结构形式,问:(1)每个模块板为1024K×64位,共需几个模块板?(2)个模块板内共有多少DRAM芯片?(3)主存共需多少DRAM芯片? CPU如何选择各模块板?解:(1). 共需模块板数为m:m=÷=64 (块)(2). 每个模块板内有DRAM芯片数为n:n=(/) ×(64/16)=16 (片)(3) 主存共需DRAM芯片为:16×64=1024 (片)每个模块板有16片DRAM芯片,容量为1024K×64位,需20根地址线(A19~A0)完成模块板内存储单元寻址。
一共有64块模块板,采用6根高位地址线(A25~A20),通过6:64译码器译码产生片选信号对各模块板进行选择。
3.用16K×8位的DRAM芯片组成64K×32位存储器,要求:(1) 画出该存储器的组成逻辑框图。
(2) 设存储器读/写周期为0.5μS, CPU在1μS内至少要访问一次。
试问采用哪种刷新方式比较合理?两次刷新的最大时间间隔是多少?对全部存储单元刷新一遍所需的实际刷新时间是多少?解:(1)组成64K×32位存储器需存储芯片数为N=(64K/16K)×(32位/8位)=16(片)每4片组成16K×32位的存储区,有A13-A0作为片内地址,用A15 A14经2:4译码器产生片选信号,逻辑框图如下所示:(2)依题意,采用异步刷新方式较合理,可满足CPU在1μS内至少访问内存一次的要求。
计算机组成原理第4章作业答案
分散刷新的行间刷新间隔 =0.1µ s×2=0.2µ s 即:每0.2µ s刷新一行。 分散刷新一遍的时间 =0.1µ s×2×256行 =51.2µs 则 分散刷新时, 2ms内可重复刷新遍数 =2ms/ 51.2µs ≈39遍
13. 设有一个64K×8位的RAM芯片, 试问该芯片共有多少个基本单元电路 (简称存储基元)?欲设计一种具有上 述同样多存储基元的芯片,要求对芯片 字长的选择应满足地址线和数据线的总 和为最小,试确定这种芯片的地址线和 数据线,并说明有几种解答。 解: 存储基元总数 = 64K × 8位 = 512K位 = 219位; 思路:如要满足地址线和数据线总 和最小,应尽量把存储元安排在字向, 因为地址位数和字数成2RAM芯片,其 内部结构排列成256×256形式,存取周期 为0.1µ s。试问采用集中刷新、分散刷新及 异步刷新三种方式的刷新间隔各为多少? 注意: DRAM的最大刷新间隔时间为 2ms, 因此分析是要注明是行间刷新间隔、 芯片最大刷新间隔。 解:则 异步刷新,最大刷新间隔时间为2ms, 行间刷新间隔 =2ms/256行 =0.0078125ms =7.8125µ s 即:每7.8125µ s刷新一行。 集中刷新时,最大刷新间隔时间为2ms, 行间刷新间隔为0.1µ s 。集中刷新的死时间 =0.1µ s×256行=25.6µ s。
9. 什么叫刷新?为什么要刷新?说明 刷新有几种方法。 解:刷新——对DRAM定期进行的全 部重写过程; 刷新原因——因电容泄漏而引起的 DRAM所存信息的衰减需要及时补充,因 此安排了定期刷新操作; 常用的刷新方法有三种——集中式、 分散式、异步式。 集中式:在最大刷新间隔时间内,集 中安排一段时间进行刷新; 分散式:在每个读/写周期之后插入 一个刷新周期,无CPU访存死时间; 异步式:是集中式和分散式的折衷。
计算机组成原理及汇编语言程序设计课后答案
《计算机组成原理与汇编语言程序设计》作业答案第一章1、先编写程序,再由计算机将这些程序存储起来,然后就可以连续地、快速地执行程序,从而实现各种运算处理。
2、(1)、能在程序控制下自动连续地工作。
(2)、运算速度快。
(3)、运算精度高(4)、具有很强的信息存储能力(5)、通用性强,应用领域极其广泛3、(1)、基本字长(2)、数据通路宽度(3)、运算速度(4)、主存储器容量(5)、外存容量(6)、配置的外围设备及其性能(7)、系统软件配置第二章1、十进制42.25 BCD码01000010.001001014、二进制01001010.01010111八进制113.256 十六进制4B.576、原码补码(1) 00000000 00000000(2)(3) 0.1010000 0.1010000(4) 1.1010000 1.0110000(5) 00001010 00001010(6)8、原码 1.0110 真值-0.01109、(1) 0.000000000000001 215 -(2) 0. 1-215 -(3) 1.000000000000001 -215 -(4) 1. -(1-215-)12、00000000000000000 15、(1)1200H(2)A307H 1001H(3)1200H 1002H(4)F03CH16、外设编址方法有两种(1)外围设备单独编址:为各I/O接口中的有关寄存器分配I/O端口地址,各设备有自己的接口,一个接口可占有若干个I/O端口地址,其数目可以不同。
(2)外围设备与主存统一编址:将I/O接口中的有关寄存器与主存单元统一编址,为它们分配统一的总线地址。
第三章3、(1)00110011+)0010110101100000 正溢(3)+)无溢出4、(1)00110011-)0010110100000110 无溢出6、(2)结果为(步骤参看教材)7、(1)商1101 余数0010 (步骤参看教材)11 、组合逻辑控制器是指产生控制信号即微命令的部件,是用组合逻辑线路来实现的。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
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. 画出示意图,简述保护模式下(无分页机制)存储器寻址的过程。
采用对用户程序透明的机制由选择子从描述子表中选择相应的描述子,得到欲访问段的段基址、段限等有关信息,再根据偏移地址访问目标存储单元。
6. 比较实模式和保护模式下的逻辑地址的异同。
相同:逻辑地址均由存放于16位段寄存器的信息和偏移地址两部分组成。
不同:实模式下,段寄存器存放段基址,偏移地址16位;保护模式下,段寄存器存放段选择子,偏移地址32位7. 保护模式下,段描述子表有几种?它们分别是什么?它们的作用又分别是什么?共有三种描述子表:全局描述子表(GDT) GDT中包含了操作系统和除中断服务程序所在段以外的各任务公用的描述子,通常包括了使用的代码段、数据段、TSS和系统中各个LDT所在段的描述子,一个系统只能有一个GDT。
局部描述子表(LDT) LDT用于存放各个任务私有的描述子,通常每个任务有一个独立LDT。
中断描述子表(IDT) IDT包含中断服务程序位置的描述子,最多256个。
系统所使用的每种类型的中断在IDT中必须有一个描述子项,通过中断指令、外部中断和异常事件来访问。
8. 请写出一个Pentium 4的内存段的段描述子。
该内存起始地址是03000000H,结束地址是05FFFFFFH;该内存段是一个用户程序的可写的数据段。
0310 9200 0000 2FFFH9. 80386的段描述子中段基址为10000000H,段限为001FFH,计算在G=0和1两种情形下该段的起始地址和结束地址。
开始地址均是10000000H结束地址: G=0 10000000H + 001FFH = 100001FFHG=1 10000000H + 001FFFFFH = 101FFFFFH10. 系统工作于实模式下,假定(DS)=2000H,(ES)=2100H,(SS)=1500H, (SI)=00A0H, (BX)=0100H,(BP)=0100H,试指出下列指令源操作数的寻址方式和物理地址:① MOV AX,0BAH ② MOV AX,[100H]③ MOV AX,[BX+SI] ④ MOV AX,ES:[BX]⑤ MOV AX,[BP] ⑥ MOV AX,BP⑦ MOV AX,[BX+5] ⑧ MOV AX,[BX+SI+5]①立即寻址②直接寻址,20100H③基址变址,201A0H④寄存器间接寻址,21100H⑤寄存器间接寻址,20100H⑥寄存器寻址⑦寄存器相对寻址,20105H⑧基址变址寻址,201A5H11. 系统工作于实模式下,假定(EAX)=00001000H,(EBX)=00002000H,(DS)=0010H。
试指出下列指令中内存操作数的寻址方式和物理地址:① MOV ECX,[EAX+EBX] 基址变址寻址,00003100H② MOV [EAX+2*EBX],CL 基址比例变址寻址,00005100H③ MOV DH,[EBX+4*EAX+1000H] 基址比例变址寻址,00007100H12. 写出把首地址为TABLE的字数组的第5个字送到DX寄存器的指令(或指令序列)。
要求使用以下几种寻址方式:① 寄存器间接寻址② 寄存器相对寻址③ 基址变址寻址①MOV DX, TABLE[8]②MOV SI, 8MOV DX,TABLE[SI]③MOV BX, OFFSET TABLEMOV SI, 8MOV DX, [BX+SI]13. 系统工作于实模式下,(SS)=0100H, (SP)=00FEH。
试画出执行下列程序段后,堆栈区和SP的内容变化过程示意图(标出存储单元的物理地址):MOV AX,1234HMOVBX,5678HAXPUSHBXPUSHPOP CX执行后,(SP)=00FCH, 如下图所示:010FAH 78H010FBH 56HSP→ 010FCH 34H010FDH 12H14.比较两条指令MOV DI,[1000H]和LEA DI,[1000H]。
MOV DI, [1000H] 将数据段偏移地址为1000H的字单元数据传送到DI;LEA DI,[1000H] 是把偏移地址值1000H传送到DI。
15. 系统工作于实模式下,(DS)=091DH, (SS)=1E4AH, (AX)=1234H, (BX)=0024H, (CX)=5678H, (BP)=0024H,(SI)=0012H,(DI)=0032H,[09226H]=00F6H,[09228H]=1E40H,[1E4F6H]=091DH。
指出下列各指令或程序段的执行结果。
① MOV CL,[BX+20H][SI]② MOV [BP][DI],CX③ LEA BX,[BX+20H][SI]MOV AX,[BX+2]④ LDS SI,[BX][DI]MOV [SI],BX⑤ XCHG CX,[BX+32H]XCHG [BX+20H][SI],AX假设各程序段的执行结果相互独立:① (CL) = 0F6H② [09226H]=5678H③ (BX)=0056H, (AX)=1E40H④ (SI)=00F6H, (DS)=1E40H⑤ (CX)= 00F6H, [09226H]=1234H, (AX)=5678H16.阅读下列各程序段,在空格填上执行结果。
① MOV BL,85HMOV AL,17HADD AL,BLDAA(AL)= 02 ,(BL)= 85 ,SF= 0 ,ZF= 0 ,PF= 0 ,CF= 1 ,AF= 1 ,OF= 0② MOV AX,BXNOT AXADD AX,BXINC AX(AX)= 0000H ,CF= 0 ,ZF= 1③ MOV AX,0FF60HSTCMOV DX,96XOR DH,0FFHSBB AX,DX(AX)= 0000 ,CF= 0④ MOV BX,0FFFEHMOV CL,2SAR BX,CL(BX)= 0FFFFH ,CF= 1⑤ MOV BX,12FFHMOV AX,0FFHMOV CL,8ROL BX,CLAND BX,AXCMP BX,AX(BX)= 0012H , (AX)= 00FFH ,ZF= 0 ,CF= 1⑥ MOV AL,90HADD AL,0E0HRCL AL,1(AL)= 0E1H ,CF= 017.按下列要求分别编制程序段:① 把标志寄存器中的符号位标志SF置1;PUSHFMOV BP,SPOR SS:[BP],80HPOPF② 寄存器AL中的高低4位互换;MOV CL,4ROL AL,CL③ 假设有3个字存储单元A、B、C,在不使用ADD和ADC指令的情况下,实现(A)+(B)⇒C;MOV AX,AXADD AX,BMOV C,AX④ 把DX、AX中的32位无符号数右移2位;SHRD AX,DX,2⑤ 用一条指令把CX中的整数转变为奇数;OR CX,1⑥ 把AX中的第1、3位求反,其余各位保持不变;XOR AX,0AH⑦ 根据AX中有0的位对BX中的对应位求反,其余各位保持不变。
NOT AXXOR BX, AX18.编写程序段实现:不改变DH的内容,但清除其最左边3位的值,结果存入BH寄存器。
BH,DHMOV1FHBH,AND19. 试给出下列各指令序列执行后目的寄存器的内容:① MOV BX,-12MOVSX EBX,BX(BX)=0FFF4H, (EBX)=0FFFFFFF4H② MOV AH,7MOVZX ECX,AH(AH)=07H, (ECX)=00000007H③ MOV AX,99HMOVZX EBX,AX(AX)=0099H,(EBX)=00000099H20.假设使用8086指令集,下列各指令语法是否有错;若有错,指明是什么错误。
① MOV 35,BL错 目标操作数不能为立即数② XLAT对③ MOV AX,DL错 源操作数与目标操作数类型不匹配④ ADD [BX][BP],BX错 应指定目标操作数为字操作数⑤ POP CS错 CS的值由系统确定,CS不能做POP指令的操作数⑥ DIV AX,BL错 被除数已隐含存放在AX⑦ MUL 8错 源操作数(乘数)不能为立即数⑧ TEST [BP],DL错 应指定目标操作数([BP])为字节操作数⑨ SBB 15H,CL错 目标操作数不能为立即数⑩ MOV AL,1000H错 源操作数与目标操作数类型不匹配⑪LEA ES,[BX]错 LEA指令不能使用段寄存器作目的操作数⑫OR CH,CL对⑬SHL DI,2错 移位次数大于1时,要用CL作计数器⑭MOV DS,1234H错 不能用立即数为段寄存器赋值⑮DAA AL错 不需操作数⑯PUSH AL错 操作数应为字操作数⑰MOV SP,1000H对⑱MOV [SI],[DI]错 应指定操作数类型⑲NOT AL,BL错 单操作数命令,不需源操作数BL⑳DEC CX,1错 单操作数命令,不需源操作数1。