汇编语言课后习题答案 郑晓薇

合集下载

计算机组成原理与汇编语言课后习题及作业答案

计算机组成原理与汇编语言课后习题及作业答案

《计算机组成原理与汇编语言》课后习题及作业答案王建东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 它的优点是支持人机对话方式的程序设计,可以边执行边修改;所需要的主存空间较小。

汇编语言第三版习题答案

汇编语言第三版习题答案

汇编语言第三版习题答案汇编语言是一种低级编程语言,它允许程序员直接控制计算机硬件。

第三版通常指的是某本汇编语言教材的修订版,其中习题答案对于学习者来说非常重要,因为它们可以帮助理解概念并验证自己的编程技能。

在汇编语言的学习过程中,习题通常包括指令集的使用、程序设计、寄存器操作、内存管理、中断处理等。

以下是一些可能的习题答案示例,但请注意,这些答案需要与具体的习题相匹配,并且可能因教材版本和习题内容的不同而有所变化。

示例习题答案习题1:编写一个汇编程序,将AX寄存器的值加1。

答案:```INC AX```习题2:编写一个程序段,将DX寄存器的值移动到AX寄存器。

答案:```MOV AX, DX```习题3:假设有一个数组存储在内存中,数组的起始地址为DS:BX,数组元素为16位整数,编写一个程序段,将数组的第一个元素加到AX 寄存器。

答案:```MOV AX, [BX] ; 将数组的第一个元素移动到AXADD AX, [BX] ; 将数组的第一个元素加到AX```习题4:编写一个程序,实现对一个字符串的逆序存储。

答案:```; 假设字符串以0结尾,存放在内存中,DS:SI指向字符串的起始地址MOV CX, 0 ; 初始化计数器LODSW ; 将字符串的一个字节加载到AX中CMP AX, 0 ; 检查是否为字符串的结束字符JE END_REVERSE ; 如果是,则跳转到结束标签PUSH AX ; 将当前字符压入堆栈INC CX ; 增加计数器JMP SHORT LODSW ; 继续加载下一个字符END_REVERSE:; 现在堆栈中存储了逆序的字符,将它们重新存储到内存中MOV BX, CX ; 将计数器的值移动到BX中MOV CX, BX ; 将BX的值再次移动到CX中,用于字符串的逆序输出POP AX ; 从堆栈中弹出字符STOSW ; 将字符存储到内存中LOOP END_REVERSE ; 重复直到CX为0```习题5:编写一个程序,计算AX寄存器中值的平方。

新版汇编语言程序设计1-5章【课后答案】

新版汇编语言程序设计1-5章【课后答案】

新版汇编语言程序设计【课后习题答案】第1章汇编语言基础知识〔习题1.1〕简述计算机系统的硬件组成及各部分作用。

〔解答〕CPU:包括运算器、控制器和寄存器组。

运算器执行所有的算术和逻辑运算;控制器负责把指指令逐条从存储器中取出,经译码分析后向机器发出各种控制命令,并正确完成程序所要求的功能;寄存器组为处理单元提供所需要的数据。

存储器:是计算机的记忆部件,它用来存放程序以及程序中所涉及的数据。

外部设备:实现人机交换和机间的通信。

〔习题1.2〕明确下列概念或符号:主存和辅存,RAM和ROM,存储器地址和I/O端口,KB、MB、GB和TB〔解答〕主存又称内存是主存储器的简称,主存储器存放当前正在执行的程序和使用的数据,CPU 可以直接存取,它由半导体存储器芯片构成其成本高、容量小、但速度快。

辅存是辅助存储器的简称,辅存可用来长期保存大量程序和数据,CPU需要通过I/O接口访问,它由磁盘或光盘构成,其成本低、容量大,但速度慢。

RAM是随机存取存储器的英语简写,由于CPU可以从RAM读信息,也可以向RAM写入信息,所以RAM也被称为读写存储器,RAM型半导体存储器可以按地址随机读写,但这类存储器在断电后不能保存信息;而ROM中的信息只能被读出,不能被修改,ROM型半导体通常只能被读出,但这类存储器断电后能保存信息。

存储器由大量存储单元组成。

为了区别每个单元,我们将它们编号,于是,每个存储单元就有了一个存储地址,I/O接口是由一组寄存器组成,为了区别它们,各个寄存器进行了编号,形成I/O地址,通常称做I/O端口。

KB是千字节、MB是兆字节、GB是吉字节和TB是太字节,它们都是表示存储器存储单元的单位。

〔习题1.3〕什么是汇编语言源程序、汇编程序、目标程序?〔解答〕用汇编语言书写的程序就称为汇编语言源程序;完成汇编工作的程序就是汇编程序;由汇编程序编译通过的程序就是目标程序。

〔习题1.4〕汇编语言与高级语言相比有什么优缺点?〔解答〕汇编语言与高级语言相比的优点:由于汇编语言本质就是机器语言,它可以直接地、有效地控制计算机硬件,因而容易产生运行速度快,指令序列短小的高效目标程序,可以直接控制计算机硬件部件,可以编写在“时间”和“空间”两方面最有效的程序。

32位汇编语言程序设计部分课后习题答案

32位汇编语言程序设计部分课后习题答案
5
习题解答
1.3 填空题-1
(3)IA-32处理器有8个32位通用寄存器,其中EAX, ___,___和EDX,可以分成16位和8位操作;还有另 外4个是___,___,___,和___。 • EBX,ECX,ESI,EDI,EBP,ESP (4)寄存器EDX是___位的,其中低16位的名称是____, 还可以分成两个8位的寄存器,其中D0~D7和D8~ D15部分可以分别用名称____和____表示。 • 32,DX,DL,DH (5)IA-32处理器有___个段寄存器,它们都是_____ 位的。 • 6,16
17
习题解答
2.3 填空题-2
(3)定义字节变量的伪指令助记符是______,获取变 量名所具有的偏移地址的操作符是_______。 • BYTE,OFFSET (8)指令“MOV EAX, OFFSET MSG”的目的操作数和 源操作数分别采用______和_______寻址方式。 • 寄存器寻址,立即数寻址 (9)已知ESI=04000H,EBX=20H,指令“MOV EAX, [ESI+EBX*2+8]”中访问的有效地址是__________。 • 04000H+20H×2+8=04048H
3
习题解答
1.1 简答题-2
(7)汇编语言中的标识符与高级语言的变量和常量名 的组成原则有本质的区别吗? • 没有 (8)汇编语言的标识符大小写不敏感意味着什么? • 表示字母大小写不同、但表示同一个符号
4
习题解答
1.2 判断题
1)EAX也被称为累加器,因为它使用最频繁。 • 对,EAX中的A来自英文累加器(Accumulator) 6)处理器的传送指令MOV属于汇编语言的执行性语句 •对 7)汇编语言的语句由明显的4部分组成,不需要分隔 符区别。 • 错,使用了分隔符才有了明显的4部分 8)MASM汇编语言的注释用分号开始,不能用中文分号 • 对,源程序中的分隔符以及各种标识符都是英文 9)程序终止执行也就意味着汇编结束,所以两者含义 相同。 • 错,两者完全是两个概念

汇编语言课后习题答案

汇编语言课后习题答案

2.1已知DS=2000H、BX=0100H、SI=0002H,存储单元[20100H]~[20103H]依次存放12345678H,[21200H]~[21203H]依次存放2A4C B765H,说明下列每条指令执行完后AX寄存器的内容。

(1)mov ax,1200h(2)mov ax,bx(3)mov ax,[1200h](4)mov ax,[bx](5)mov ax,[bx+1100h](6)mov ax,[bx+si](7)mov ax,[bx][si+1100h]〔解答〕(1)AX=1200H(2)AX=0100H(3)AX=4C2AH;偏移地址=bx=0100h(4)AX=3412H;偏移地址=bx=0100h(5)AX=4C2AH;偏移地址=bx+1100h=1200h(6)AX=7856H;偏移地址=bx+si=0100h+0002h=0102h(7)AX=65B7H;偏移地址=bx+si+1100h=0100h+0002h+1100h=1202h〔习题2.2〕指出下列指令的错误(1)mov cx,dl(2)mov ip,ax(3)mov es,1234h(4)mov es,ds(5)mov al,300(6)mov[sp],ax(7)mov ax,bx+di(8)mov20h,ah〔解答〕(1)两操作数类型不匹配(2)IP指令指针禁止用户访问(3)立即数不允许传给段寄存器(4)段寄存器之间不允许传送(5)两操作数类型不匹配(6)目的操作数应为[SI](7)源操作数应为[BX+DI](8)立即数不能作目的操作数〔习题2.5〕已知SS=2200H、SP=00B0H,画图说明执行下面指令序列时,堆栈区和SP的内容如何变化?mov ax,8057hpush axmov ax,0f79hpush axpop bxpop[bx]〔解答〕mov ax,8057hpush axmov ax,0f79hpush axpop bx;bx=0f79hpop[bx];DS:[0f79h]=8057h〔习题2.6〕给出下列各条指令执行后AL值,以及CF、ZF、SF、OF和PF的状态:mov al,89hadd al,aladd al,9dhcmp al,0bchsub al,aldec alinc al〔解答〕mov al,89h;AL=89h CF ZF SF OF PFadd al,al;AL=12h10011;10001001+10001001100010010add al,9dh;AL=0afh00101;00010010+1001110110101111cmp al,0bch;AL=0afh10101;10101111-10111100*01000011sub al,al;AL=00h01001dec al;AL=0ffh00101 ;00000000-00000001*11111111inc al;AL=00h01001 ;11111111+00000001*11111111必考:〔习题2.10〕指出下列指令的错误:(1)xchg[si],30h (2)pop cs(3)sub[si],[di](4)push ah(5)adc ax,ds(6)add[si],80h(7)in al,3fch(8)out dx,ah〔解答〕(1)xchg的操作数不能是立即数(2)不应对CS直接赋值(3)两个操作数不能都是存储单元(4)堆栈的操作数不能是字节量(5)adc的操作数不能是段寄存器(6)没有确定是字节还是字操作(7)in不支持超过FFH的直接寻址(8)out只能以AL/AX为源操作数〔习题2.11〕给出下列各条指令执行后的结果,以及状态标志CF、OF、SF、ZF、PF的状态。

汇编语言习题答案 第三版

汇编语言习题答案 第三版

汇编语言习题答案第三版汇编语言习题答案第三版汇编语言作为计算机科学中的一门重要课程,对于理解计算机底层原理和编程语言有着重要的意义。

而在学习汇编语言的过程中,习题的完成是提高对知识掌握程度的重要途径。

本文将为读者提供一些汇编语言习题的解答,希望能够帮助读者更好地理解和应用汇编语言。

1. 以下是一段汇编代码,请问这段代码的功能是什么?```MOV AX, 5MOV BX, 3ADD AX, BX```答案:这段代码的功能是将寄存器AX中的值设置为5,将寄存器BX中的值设置为3,然后将AX和BX的值相加,结果保存在AX中。

2. 以下是一段汇编代码,请问这段代码的功能是什么?```MOV AL, 0MOV CX, 10LOOP_START:ADD AL, 1LOOP LOOP_START```设置为10。

然后通过循环,将AL的值逐步增加1,循环执行10次。

3. 以下是一段汇编代码,请问这段代码的功能是什么?```MOV AX, 10CMP AX, 5JG LABEL1JMP LABEL2LABEL1:ADD AX, 5LABEL2:SUB AX, 3```答案:这段代码的功能是将寄存器AX中的值设置为10,然后与5进行比较。

如果AX的值大于5,则跳转到LABEL1处执行,否则跳转到LABEL2处执行。

在LABEL1处,将AX的值增加5;在LABEL2处,将AX的值减去3。

4. 以下是一段汇编代码,请问这段代码的功能是什么?```MOV AX, 5MOV BX, 3MUL BX```置为3。

然后使用MUL指令,将AX的值与BX的值相乘,结果保存在AX中。

5. 以下是一段汇编代码,请问这段代码的功能是什么?```MOV AX, 10MOV BX, 2DIV BX```答案:这段代码的功能是将寄存器AX中的值设置为10,将寄存器BX中的值设置为2。

然后使用DIV指令,将AX的值除以BX的值,商保存在AX中,余数保存在DX中。

《汇编语言》各章习题答案

《汇编语言》各章习题答案

汇编语言各章习题答案习题一答案:1.1无符号数: 11010011=211=D3H,01110111=119=77H,10000011=131=83H,00101111=47=2FH,10101010=170=AAH带符号数:11010011= -45=D3H,01110111=+119=77H,10000011= -125=83H,00101111=+47=2FH,10101010= -86=AAH1.2 5E8AH,0BE6H,3DEH,4940H1.3 00011101+00110101=01010010=52H=8201001001+11101000=00110001=31H=4910111110+01010010=00010000=10H=1610011010+11110001=10001011=8BH= -1171.4 00101001+01010011=01111100+00000110=10000010=82H=8201110011-00100100=01001111-00000110=01001001=49H=4901100110+00011000=01111110+00000110=10000100=84H=840000000100110010+01110101=0000000110100111+00000110=0000001000000111=0207H=2071.5 000020A3H,FF94H,00003456H,007FH,FFFFEC00H1.6无符号数:0~65535,0000H~FFFFH;带符号数:-32768~+32767,8000H~7FFFH 1.7 (1) 38H等于十进制数56,是十进制数56的补码,数字8的ASCII码,十进制数38的压缩BCD码(2) FFH等于十进制数-1,是带符号数-1的补码,无符号数为255(3) 5AH等于十进制数90,是十进制数90的补码,大写字母Z的ASCII码(4) 0DH等于十进制数13,是十进制数13的补码,回车符的ASCII码1.8(1) 108=01101100B=6CH,补码01101100B,压缩BCD码0000000100001000,ASCII码313038H(2) 46=00101110B=2EH,补码00101110B,压缩BCD码01000110,ASCII码3436H(3) –15=11110001B=F1H,补码11110001B,ASCII码2D3135H(4) 254=0000000011111110B=00FEH,补码0000000011111110B,压缩BCD码0000001001010100,ASCII码323534H1.9(1) 56+63=01110111B,CF=0,SF=0,ZF=0,OF=0(2) 83-45=00100110B,CF=0,SF=0,ZF=0,OF=0(3) -74+29=11010011B,CF=0,SF=1,ZF=0,OF=0(4) -92-37=01111111B,CF=1,SF=0,ZF=0,OF=11.10回车、换行、响铃、ESC键、空格键、@、P、p习题二答案:2.9最少划分为16个逻辑段,最多划分为65536个逻辑段(每段16个字节)2.10CS:IP,DS:BX、SI、DI,ES:BX、SI、DI,SS:SP、BP2.11字节单元保存8位数,字单元保存16位数。

新版汇编语言程序设计【课后答案】

新版汇编语言程序设计【课后答案】

新版汇编语言程序设计【课后答案】新版汇编语言程序设计【课后习题答案】第1章汇编语言基础知识〔习题〕简述计算机系统的硬件组成及各部分作用。

〔解答〕CPU:包括运算器、控制器和寄存器组。

运算器执行所有的算术和逻辑运算;控制器负责把指指令逐条从存储器中取出,经译码分析后向机器发出各种控制命令,并正确完成程序所要求的功能;寄存器组为处理单元提供所需要的数据。

存储器:是计算机的记忆部件,它用来存放程序以及程序中所涉及的数据。

外部设备:实现人机交换和机间的通信。

〔习题〕明确下列概念或符号:主存和辅存,RAM和ROM,存储器地址和I/O端口,KB、MB、GB和TB 〔解答〕主存又称内存是主存储器的简称,主存储器存放当前正在执行的程序和使用的数据,CPU可以直接存取,它半导体存储器芯片构成其成本高、容量小、但速度快。

辅存是辅助存储器的简称,辅存可用来长期保存大量程序和数据,CPU 需要通过I/O接口访问,它磁盘或光盘构成,其成本低、容量大,但速度慢。

RAM是随机存取存储器的英语简写,于CPU可以从RAM读信息,也可以向RAM写入信息,所以RAM 也被称为读写存储器,RAM型半导体存储器可以按地址随机读写,但这类存储器在断电后不能保存信息;而ROM中的信息只能被读出,不能被修改,ROM型半导体通常只能被读出,但这类存储器断电后能保存信息。

存储器大量存储单元组成。

为了区别每个单元,我们将它们编号,于是,每个存储单元就有了一个存储地址,I/O 接口是一组寄存器组成,为了区别它们,各个寄存器进行了编号,形成I/O地址,通常称做I/O端口。

KB是千字节、MB是兆字节、GB是吉字节和TB是太字节,它们都是表示存储器存储单元的单位。

〔习题〕什么是汇编语言源程序、汇编程序、目标程序?〔解答〕用汇编语言书写的程序就称为汇编语言源程序;完成汇编工作的程序就是汇编程序;汇编程序编译通过的程序就是目标程序。

〔习题〕汇编语言与高级语言相比有什么优缺点?〔解答〕汇编语言与高级语言相比的优点:于汇编语言本质就是机器语言,它可以直接地、有效地控制计算机硬件,因而容易产生运行速度快,指令序列短小的高效目标程序,可以直接控制计算机硬件部件,可以编写在“时间”和“空间”两方面最有效的程序。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

习题一1 分别将下列二进制数作为无符号数和带符号数转换为十进制和十六进制数11010011,01110111,10000011,00101111 ,10101010查看正确答案无符号数: 11010011=211=D3H,01110111=119=77H,10000011=131=83H,00101111=47=2FH,10101010=170=AAH带符号数:11010011= -45=D3H,01110111=+119=77H,10000011= -125=83H,00101111=+47=2FH,10101010= -86=AAH2 十六进制运算1A52H+4438H ,3967H-2D81H,37H×12H ,1250H×4H查看正确答案5E8AH,0BE6H,3DEH,4940H3 将十进制数变为8位补码,做运算(结果用二进制、十六进制、十进制表示)29+53,73-24,-66+82 ,-102-15查看正确答案00011101+00110101=01010010=52H=8201001001+11101000=00110001=31H=4910111110+01010010=00010000=10H=1610011010+11110001=10001011=8BH= -1174 用压缩BCD码计算(结果用二进制、BCD码、十进制表示)29+53,73-24,66+18 ,132+75查看正确答案00101001+01010011=01111100+00000110=10000010=82H=8201110011-00100100=01001111-00000110=01001001=49H=4901100110+00011000=01111110+00000110=10000100=84H=84 0000000100110010+01110101=0000000110100111+00000110=0000001000000111=0207H=2075 符号位扩展(字节扩展为字,字扩展为双字)20A3H,94H ,3456H ,7FH ,EC00H查看正确答案000020A3H,FF94H,00003456H,007FH,FFFFEC00H6 若机器字长为16位,其无符号数表示范围是多少?带符号数表示范围是多少?分别用十进制和十六进制表示。

查看正确答案无符号数:0~65535,0000H~FFFFH;带符号数:-32768~+32767,8000H~7FFFH7 写出下列十六进制数所能代表的数值或编码:(1)38H (2)FFH (3)5AH (4)0DH(1) 38H等于十进制数56,是十进制数56的补码,数字8的ASCII码,十进制数38的压缩BCD码(2) FFH等于十进制数-1,是带符号数-1的补码,无符号数为255(3) 5AH等于十进制数90,是十进制数90的补码,大写字母Z的ASCII码(4) 0DH等于十进制数13,是十进制数13的补码,回车符的ASCII码8 将下列十进制数分别转换为二进制、十六进制、二进制补码、压缩BCD码和ASCII码:(1)108 (2)46 (3)-15 (4)254查看正确答案(1) 108=01101100B=6CH,补码01101100B,压缩BCD码0000000100001000,ASCII码31 3038H(2) 46=00101110B=2EH,补码00101110B,压缩BCD码01000110,ASCII码3436H(3) –15=11110001B=F1H,补码11110001B,ASCII码2D3135H(4) 254=0000000011111110B=00FEH,补码0000000011111110B,压缩BCD码000000100 1010100,ASCII码323534H9 写出下列算式的二进制运算结果,标志位CF、SF、ZF、OF分别是什么值?(1)56+63 (2)83-45 (3)-74+29 (4)-92-37查看正确答案(1) 56+63=01110111B,CF=0,SF=0,ZF=0,OF=0(2) 83-45=00100110B,CF=0,SF=0,ZF=0,OF=0(3) -74+29=11010011B,CF=0,SF=1,ZF=0,OF=0(4) -92-37=01111111B,CF=1,SF=0,ZF=0,OF=110 查表,指出ASCII码0DH、0AH、07H、1BH、20H、40H、50H、70H对应的控制字符。

查看正确答案回车、换行、响铃、ESC键、空格键、@、P、p习题二1 写出冯·诺依曼计算机的基本特点。

2 如何解决内存速度与CPU速度不匹配问题。

3 写出计算机总线的分类与作用。

4 简述8086CPU寄存器的分组及各自的作用。

5 标志寄存器中都有哪些标志位与计算结果有关?6 简述逻辑地址与物理地址的概念,两者的关系。

7 存储器为什么要分段?如何分段。

8 8086系统把存储器分为哪四种类型的段?各自的特点是什么。

9 8086CPU的地址线为20根,寻址空间为1MB。

最少可划分为多少个逻辑段?最多呢?查看正确答案最少划分为16个逻辑段,最多划分为65536个逻辑段(每段16个字节)10 在四种类型的段中通常使用哪些寄存器表示逻辑地址?CS:IP,DS:BX、SI、DI,ES:BX、SI、DI,SS:SP、BP11 字节单元和字单元如何区分?若给出一个地址,如何知道要访问的是字节单元还是字单元?查看正确答案字节单元保存8位数,字单元保存16位数。

根据源操作数的属性确定要访问的是字节单元还是字单元。

12 偶地址单元和奇地址单元在保存数据上有区别吗?查看正确答案对于字节单元来说,偶地址和奇地址一样;对于字单元而言,最好用偶地址保存,可减少CPU的访存次数。

13 有一个32K字节的存储区,首地址是3302:5AC8H,写出其首单元和末单元的物理地址。

查看正确答案首单元的物理地址=38AE8H,末单元的物理地址=38AE8H+7FFFH=40AE7H14 什么是有效地址?如何获得有效地址。

15 存储单元地址和内容表示如下,请画出存储单元存放形式。

(1) (1280A)=3456H (2) (20021H)=4DH (3) (33450H)=37A520D1H16 根据逻辑地址计算出物理地址,并解释逻辑地址与物理地址的对应关系。

(1) 2389:3DE9H (2) 1230:EC92H (3) 14D9:C202H查看正确答案(1)物理地址=27679H (2) 物理地址=20F92H (3) 物理地址=20F92H(2)和(3)的物理地址是一样的。

说明逻辑地址不唯一,多个逻辑地址可对应到同一个物理单元上。

17 给出段地址和偏移地址如下,计算出对应的物理地址。

(CS)=54C3H,(ES)=2569H,(DS)=1200H,(SS)=4422H,(BX)=5678H,(SP)=9945H,(IP)=0E54H,(DI)=63B1H查看正确答案代码段CS:IP的物理地址=55A84H 堆栈段SS:SP的物理地址=4DB65H数据段DS:BX的物理地址=17678H 附加段ES:DI的物理地址=2BA41H18 已知堆栈区大小为512字节,栈底单元的物理地址为15230H。

将两个字入栈保存后,当前栈指针所指单元的物理地址是多少?堆栈区中还能保存多少个数据?查看正确答案当前栈指针所指单元的物理地址是1522CH。

堆栈区中还能保存254个字。

19 写出修改当前数据段200H开始的数据区数据的DEBUG命令。

查看正确答案执行E 20020 对当前代码段从100H开始反汇编的DEBUG命令是什么?查看正确答案执行U 10021 在DEBUG下,要将寄存器CX的值修改为100H,应该执行什么命令?查看正确答案执行R CX,然后输入10022 在DEBUG下,怎样将数据段的0号~4号字节单元填入'a'、'b'、'c'、'd'?查看正确答案执行E DS:0 ‘a’ ‘b’ ‘c’ ‘d’习题三1 名词解释:零地址指令,一地址指令,二地址指令。

2 分别写出与数据有关的7种寻址方式并举例说明。

3 已知(BX)=1290H,(SI)=348AH,(DI)=2976H,(BP)=6756H,(DS)=2E92H,(ES)=4D82 H,(SS)=2030H,请指出下列指令的寻址方式,并求出有效地址EA和物理地址:MOV AX,BXMOV AX,1290HMOV AX,[BX]MOV AX,DS:[1290H]MOV AX,[BP]MOV [DI][BX],AXMOV ES:[SI],AX查看正确答案MOV AX,BX 源操作数为寄存器寻址,EA 无,物理地址无MOV AX,1290H 立即寻址,EA 无,物理地址无MOV AX,[BX] 寄存器间接寻址,EA=1290H, 物理地址=2FBB0HMOV AX,DS:[1290H] 直接寻址,EA=1290H, 物理地址=2FBB0HMOV AX,[BP] 寄存器间接寻址,EA=6756H, 物理地址=26A56HMOV [DI][BX],AX 目的操作数为基址变址寻址,EA=3C06H, 物理地址=32526HMOV ES:[SI],AX 寄存器间接寻址,EA=348AH, 物理地址=50CAAH4 寄存器间接寻址方式可以使用哪些寄存器作为间址寄存器?5 立即寻址方式和寄存器寻址方式的操作数有物理地址吗?6 什么是段超越?段超越前缀代表什么?7 请指出下列指令的错误:MOV AX,[CX]MOV AL,1200HMOV AL,BXMOV [SI][DI],AXMOV ES:[DX],CXMOV [AX],VALUEMOV COUNT,[SI]查看正确答案MOV AX,[CX] 错。

CX不能为间址寄存器MOV AL,1200H 错。

立即数超出8位寄存器范围MOV AL,BX 错。

两个操作数不匹配MOV [SI][DI],AX 错。

两个变址寄存器不能在一起MOV ES:[DX],CX 错。

DX不能为间址寄存器MOV [AX],VALUE 错。

AX不能为间址寄存器MOV COUNT,[SI] 错。

两个操作数不能都是存储单元8 根据题目要求,写出相应的汇编指令:(1)把BX寄存器的值传送给AX(2)将立即数15送入CL寄存器(3)用BX寄存器间接寻址方式将存储单元中的字与AX寄存器的值相加,结果在AX中(4)把AL中的字节写入用基址变址寻址的存储单元中(5)用SI寄存器和位移量VALUE的寄存器相对寻址方式,从存储单元中读出一个字送入寄存器AX (6)将AX中的数与偏移地址为2000H存储单元的数相减,结果在AX中查看正确答案(1) MOV AX,BX (2) MOV CL,15 (3) ADD AX,[BX](4) MOV [BX+SI],AL (5) MOV AX,VALUE[SI] (6) SUB AX,DS:[2000H]9 写出用下列寻址方式将存储单元X中的第3个字取出,AX与其相加再放入Y单元的指令序列。

相关文档
最新文档