- 1、本文档共23页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
钱晓捷新版汇编语言程序设计习题答案
第一章汇编语言基础知识
1.17、举例说明CF和OF标志的差异。
溢出标志OF和进位标志CF是两个意义不同的标志
进位标志表示无符号数运算结果是否超出范围,运算结果仍然正确;溢出标志表示有符
号数运算结果是否超出范围,运算结果已经不正确•例1:3AH+7CH=B6H
无符号数运算:58+124=182,范围内,无进位
有符号数运算:58+124=182,范围外,有溢出•例2:AAH+7CH=(1)26H
无符号数运算:170+124=294,范围外,有进位
有符号数运算:-86+124=28,范围内,无溢出
1.20、8086有哪4种逻辑段,各种逻辑段分别是什么用途?(解答)
代码段(CodeSegment)用来存放程序的指令序列。处理器利用CS:IP取得下一条要执
行的指令
•堆栈段(StackSegment)确定堆栈所在的主存区域。处理器利用SS:SP操作堆栈中的
数据
•数据段(DataSegment)存放当前运行程序所用的数据。处理器利用DS:EA存取数据
段中的数据
•附加段(ExtraSegment)是附加的数据段,也用于数据的保存。处理器利用ES:EA存
取数据段中的数据
第二章8086指令系统
2.1已知DS=2000H、BX=0100H、SI=0002H,存储单元[20100H]~[20103H]依次存
放12345678H,[21200H]~[21203H]依次存放2A4CB765H,说明下列每条指令执行
完后AX寄存器的内容。
(1)movax,1200h;AX=1200h
(2)movax,bx;AX=0100h
(3)movax,[1200h];AX=4C2Ah
(4)movax,[bx];AX=3412h
(5)movax,[bx+1100h];AX=4C2Ah
(6)movax,[bx+si];AX=7856h
(7)movax,[bx][si+1100h];AX=65B7h
2.2指出下列指令的错误
(1)movcx,dl两操作数类型不匹配
第1页共23页
(2)movip,axIP指令指针禁止用户访问
(3)moves,1234h立即数不允许传给段寄存器
(4)moves,ds段寄存器之间不允许传送
(5)moval,300两操作数类型不匹配
(6)mov[sp],ax目的操作数应为[BP]
(7)movax,bx+di源操作数应为[BX+DI]
(8)mov20h,ah立即数不能作目的操作数
2.3已知数字0~9对应的格雷码依次为:18H、34H、05H、06H、09H、0AH、0CH、
11H、12H、14H,它存在于以table为首地址(设为200H)的连续区域中。请为如下程
序段的每条指令加上注释,说明每条指令的功能和执行结果。
leabx,table;获取table的首地址,BX=200H
moval,8;传送欲转换的数字,AL=8
xlat;转换为格雷码,AL=12H
2.4什么是堆栈,它的工作原则是什么,它的基本操作有哪两个,对应哪两种指令?
堆栈是一种按“先进后出”原则存取数据的存储区域。
堆栈的两种基本操作是压栈和出栈,对应的指令是PUSH和POP。
2.5已知SS=FFA0H、SP=00B0H,画图说明执行下面指令序列时,堆栈区和SP的内
容如何变化?
movax,8057h
pushax
movax,0f79h
pushax
popbx;bx=0f79h
第2页共23页
pop[bx];DS:[0f79h]=8057h
2.6给出下列各条指令执行后AL值,以及CF、ZF、SF、OF和PF的状态:
moval,89hA
文档评论(0)