第3章-通用数据处理指令习题答案

合集下载

误差理论及数据处理第三章 课后答案

误差理论及数据处理第三章 课后答案

修正值=)(4321l l l l ∆+∆+∆+∆- =)1.03.05.07.0(+-+-- =0.4)(m μ 测量误差: l δ=4321lim 2lim 2lim 2lim 2l l l l δδδδ+++±=2222)20.0()20.0()25.0()35.0(+++± =)(51.0m μ±3-2 为求长方体体积V ,直接测量其各边长为mm a 6.161=,mm 44.5b =,mm c 2.11=,已知测量的系统误差为mm a 2.1=∆,mm b 8.0-=∆,mm c 5.0=∆,测量的极限误差为mm a 8.0±=δ,mm b 5.0±=δ,mm c 5.0±=δ, 试求立方体的体积及其体积的极限误差。

abc V = ),,(c b a f V = 2.115.446.1610⨯⨯==abc V)(44.805413mm =体积V 系统误差V ∆为:c ab b ac a bc V ∆+∆+∆=∆)(74.2745)(744.274533mm mm ≈=立方体体积实际大小为:)(70.7779530mm V V V =∆-=222222lim )()()(c b a V cf b f a f δδδδ∂∂+∂∂+∂∂±= 222222)()()(c b a ab ac bc δδδ++±=)(11.37293mm ±=测量体积最后结果表示为:V V V V lim 0δ+∆-=3)11.372970.77795(mm ±=3—3 长方体的边长分别为α1,α2, α3测量时:①标准差均为σ;②标准差各为σ1、σ2、 σ3 。

试求体积的标准差。

解:长方体的体积计算公式为:321a a a V ⋅⋅= 体积的标准差应为:232322222121)()()(σσσσa V a V a V V ∂∂+∂∂+∂∂=现可求出:321a a a V ⋅=∂∂;312a a a V ⋅=∂∂;213a a a V⋅=∂∂ 若:σσσσ===321 则有:232221232322222121)()()()()()(a V a V a V a V a V a V V ∂∂+∂∂+∂∂=∂∂+∂∂+∂∂=σσσσσ221231232)()()(a a a a a a ++=σ若:321σσσ≠≠ 则有:232212223121232)()()(σσσσa a a a a a V ++=3-4 测量某电路的电流mA I 5.22=,电压V U 6.12=,测量的标准差分别为mA I 5.0=σ,V U 1.0=σ,求所耗功率UI P =及其标准差P σ。

第四版钱晓捷课后习题答案

第四版钱晓捷课后习题答案

第四版钱晓捷课后习题答案第四版钱晓捷课后习题答案《微机原理与接口技术》习题解答第1章微型计算机系统 (2)第2章处理器结构 (14)第3章数据处理 (29)第4章汇编语言程序设计 (52)第5章微机总线 (82)第6章存储系统 (96)第7章输入输出接口 (115)第8章常用接口技术 (137)第9章处理器性能提高技术 (160)第10章并行处理技术 (172)第1章微型计算机系统〔习题1.1〕简答题(1)计算机字长(Word)指的是什么?(2)总线信号分成哪三组信号?(3)PC机主存采用DRAM组成还是SRAM 组成?(4)Cache是什么意思?(5)ROM-BIOS是什么?(6)中断是什么?(7)32位PC机主板的芯片组是什么?(8)教材中MASM是指什么?(9)处理器的“取指-译码-执行周期”是指什么?(10)本课程的主要内容属于计算机系统层次结构中哪个层次?〔解答〕①处理器每个单位时间可以处理的二进制数据位数称计算机字长。

②总线信号分成三组,分别是数据总线、地址总线和控制总线。

③PC机主存采用DRAM组成。

-2-④高速缓冲存储器Cache是处理器与主存之间速度很快但容量较小的存储器。

⑤ROM-BIOS是“基本输入输出系统”,操作系统通过对BIOS的调用驱动各硬件设备,用户也可以在应用程序中调用BIOS中的许多功能。

⑥中断是CPU正常执行程序的流程被某种原因打断、并暂时停止,转向执行事先安排好的一段处理程序,待该处理程序结束后仍返回被中断的指令继续执行的过程。

⑦主板芯片组是主板的核心部件,它提供主板上的关键逻辑电路。

⑧MASM是微软开发的宏汇编程序。

⑨指令的处理过程。

处理器的“取指—译码—执行周期”是指处理器从主存储器读取指令(简称取指),翻译指令代码的功能(简称译码),然后执行指令所规定的操作(简称执行)的过程。

⑩机器语言层,即指令集结构。

(学生很多认为是:层。

前4章主要涉及汇编语言,但本书还有很多处理器原理等内容)〔习题1.2〕判断题(1)软件与硬件的等价性原理说明软硬件在-3-功能、性能和成本等方面是等价的。

16。32位微机原理、汇编语言及接口技术(第二版)第三章课后习题答案。

16。32位微机原理、汇编语言及接口技术(第二版)第三章课后习题答案。

第3章3.1:汇编语言有什么特点解:汇编语言是一种以处理器指令系统为基础的低级程序设计语言,它采用助记符表达指令操作码,采用标识符号表示指令操作数,可以直接、有效地控制计算机硬件,因而容易创建代码序列短小、运行快速的可执行程序3.2编写汇编语言源程序时,一般的组成原则是什么?解:(1)完整的汇编语言源程序由段组成(2)一个汇编语言源程序可以包含若干个代码段、数据段、附加段或堆栈段,段与段之间的顺序可随意排列(3)需独立运行的程序必须包含一个代码段,并指示程序执行的起始点,一个程序只有一个起始点(4)所有的可执行性语句必须位于某一个代码段内,说明性语句可根据需要位于任一段内(5)通常,程序还需要一个堆栈段3.3 MODEL伪指令是简化段定义源程序格式中必不可少的语句,它设计了哪7种存储模式?各用于创建什么性质的程序?解:3.4如何规定一个程序执行的开始位置,主程序执行结束应该如何返回DOS,源程序在何处停止汇编过程?解:开始位置:用标号指明返回DOS:利用DOS功能调用的4CH子功能来实现汇编停止:执行到一条END伪指令时,停止汇编3.5逻辑段具有哪些属性?解:段定位、段组合和段类型。

3.6给出采用一个源程序格式书写的例题3.1源程序例题3.1:创建一个在屏幕上显示一段信息的程序……解:stack segment stackdb 1024(0)stack endsdata segmentstring db 'Hello,Assembly!',0dH,0aH,‘$’data endscode segment 'code'assume cs:code,ds:data,ss:stackstart: mov dx,offset stringmov ah,9int 21hcode endsend start3.7DOS支持哪两种可执行程序结构,编写这两种程序时需要注意什么?解:(1). EXE程序程序可以有多个代码段和多个数据段,程序长度可以超过64KB通常生成EXE结构的可执行程序(2). COM程序只有一个逻辑段,程序长度不超过64KB需要满足一定条件才能生成COM结构的可执行程序(MASM 6.x需要采用TINY模式)3.8举例说明等价“EUQ”伪指令和等号“=”伪指令的用途解:符号定义伪指令有“等价EQU”和“等号=”:符号名 EQU 数值表达式符号名 EQU <字符串>符号名=数值表达式EQU用于数值等价时不能重复定义符号名,但“=”允许有重复赋值。

大学数据库-第3章习题解答

大学数据库-第3章习题解答

生产厂家的数据有:厂名、地址、向商店提供的商品价格
请设计该百货商店的概念模型,再将概念模型转换为关系模型。注意某些信息可用属性 表示,其他信息可用联系表示。 答:概念模型如图所示。
题 3.22 E-R 图
图中:
职工:职工号,姓名,住址 商品部:商品部号,名称 商品:商品代号,价格,型号,出厂价格 生产厂家:厂名,地址
〖3.19〗 请设计一个图书馆数据库,此数据库中对每个借阅 者保存记录,包括:读者号、姓名、地址、性别、 年龄、单位。对每本书,保存有:书号、书名、作 者、出版社。对每本被借出的书保存有读者号、借 出日期和应还日期。要求:给出该图书馆数据库的 E-R 图,再将其转换为关系模型。
答:该图书馆数据库的 E-R 图如图所示。 其中:
〖3.16〗 为什么要从两层 C/S 结构发展成三层 C/S 结构? 答:为了减轻两层 C/S 结构中客户机的负担,从客户机和服务器各抽一部分功能,组成应用 服务器,成为三层 C/S 结构。 〖3.17〗 叙述数据字典的主要任务。 答:数据字典的任务就是管理有关数据的信息,主要包括:描述数据库系统的所有对象,并 确定其属性;描述数据库系统对象之间的各种交叉联系;登记所有对象的完整性及安全性限 制等;对数据字典本身的维护、保护、查询与输出。 〖3.18〗 现有一个局部应用,包括两个实体“出版社”和“作者”,这两个实体是多对多的
答:概念结构设计的结果用数据库的信息模型表示。信息模型的主要特点和设计策略是:信 息模型是现实世界的一个真实模型,能真实、充分地反映现实世界,能满足用户对数据的处 理要求;信息模型应当易于理解;信息模型应当易于更改,有利于修改和扩充;信息模型易 于向特定的数据模型转换。 〖3.8〗 什么是数据抽象?试举例说明。 答:① 数据抽象就是抽取现实世界的共同特性,忽略非本质的细节,并把这些共同特性用 各种概念精确地加以描述,形成某种数据模型。

2020年计算机组成原理第3章习题参考答案

2020年计算机组成原理第3章习题参考答案

作者:旧在几作品编号:2254487796631145587263GF24000022 时间:2020.12.13第3章习题参考答案1、设有一个具有20位地址和32位字长的存储器,问 (1) 该存储器能存储多少字节的信息?(2) 如果存储器由512K ×8位SRAM 芯片组成,需要多少片? (3) 需要多少位地址作芯片选择? 解:(1) 该存储器能存储:字节4M 832220=⨯(2) 需要片8823228512322192020=⨯⨯=⨯⨯K (3) 用512K ⨯8位的芯片构成字长为32位的存储器,则需要每4片为一组进行字长的位数扩展,然后再由2组进行存储器容量的扩展。

所以只需一位最高位地址进行芯片选择。

2、已知某64位机主存采用半导体存储器,其地址码为26位,若使用4M ×8位的DRAM 芯片组成该机所允许的最大主存空间,并选用内存条结构形式,问; (1) 若每个内存条为16M ×64位,共需几个内存条? (2) 每个内存条内共有多少DRAM 芯片?(3) 主存共需多少DRAM 芯片? CPU 如何选择各内存条? 解:(1) 共需条4641664226=⨯⨯M 内存条 (2) 每个内存条内共有32846416=⨯⨯M M 个芯片(3) 主存共需多少1288464648464226=⨯⨯=⨯⨯M M M 个RAM 芯片, 共有4个内存条,故CPU 选择内存条用最高两位地址A 24和A 25通过2:4译码器实现;其余的24根地址线用于内存条内部单元的选择。

3、用16K ×8位的DRAM 芯片构成64K ×32位存储器,要求: (1) 画出该存储器的组成逻辑框图。

(2) 设存储器读/写周期为0.5μS ,CPU 在1μS 内至少要访问一次。

试问采用哪种刷新方式比较合理?两次刷新的最大时间间隔是多少?对全部存储单元刷新一遍所需的实际刷新时间是多少? 解:(1) 用16K ×8位的DRAM 芯片构成64K ×32位存储器,需要用16448163264=⨯=⨯⨯K K 个芯片,其中每4片为一组构成16K ×32位——进行字长位数扩展(一组内的4个芯片只有数据信号线不互连——分别接D 0~D 7、D 8~D 15、D 16~D 23和D 24~D 31,其余同名引脚互连),需要低14位地址(A 0~A 13)作为模块内各个芯片的内部单元地址——分成行、列地址两次由A 0~A 6引脚输入;然后再由4组进行存储器容量扩展,用高两位地址A 14、A 15通过2:4译码器实现4组中选择一组。

数据结构第三章考试题库(含答案)

数据结构第三章考试题库(含答案)

第3章栈和队列一选择题1. 对于栈操作数据的原则是()。

【青岛大学2001 五、2(2分)】A. 先进先出B. 后进先出C. 后进后出D. 不分顺序2. 在作进栈运算时,应先判别栈是否( ①),在作退栈运算时应先判别栈是否( ②)。

当栈中元素为n个,作进栈运算时发生上溢,则说明该栈的最大容量为( ③)。

为了增加内存空间的利用率和减少溢出的可能性,由两个栈共享一片连续的内存空间时,应将两栈的( ④)分别设在这片内存空间的两端,这样,当( ⑤)时,才产生上溢。

①, ②: A. 空 B. 满 C. 上溢 D. 下溢③: A. n-1 B. n C. n+1 D. n/2④: A. 长度 B. 深度 C. 栈顶 D. 栈底⑤: A. 两个栈的栈顶同时到达栈空间的中心点.B. 其中一个栈的栈顶到达栈空间的中心点.C. 两个栈的栈顶在栈空间的某一位置相遇.D. 两个栈均不空,且一个栈的栈顶到达另一个栈的栈底.【上海海运学院1997 二、1(5分)】【上海海运学院1999 二、1(5分)】3. 一个栈的输入序列为123…n,若输出序列的第一个元素是n,输出第i(1<=i<=n)个元素是()。

A. 不确定B. n-i+1C. iD. n-i【中山大学1999 一、9(1分)】4. 若一个栈的输入序列为1,2,3,…,n,输出序列的第一个元素是i,则第j个输出元素是()。

A. i-j-1B. i-jC. j-i+1D. 不确定的【武汉大学2000 二、3】5. 若已知一个栈的入栈序列是1,2,3,…,n,其输出序列为p1,p2,p3,…,p N,若p N是n,则p i是( )。

A. iB. n-iC. n-i+1D. 不确定【南京理工大学2001 一、1(1.5分)】6. 有六个元素6,5,4,3,2,1 的顺序进栈,问下列哪一个不是合法的出栈序列?()A. 5 4 3 6 1 2B. 4 5 3 1 2 6C. 3 4 6 5 2 1D. 2 34 15 6【北方交通大学2001 一、3(2分)】7. 设栈的输入序列是1,2,3,4,则()不可能是其出栈序列。

计算机操作系统(第四版)课后习题答案第三章

计算机操作系统(第四版)课后习题答案第三章

第三章处理机调度与死锁1,高级调度与低级调度的主要任务是什么?为什么要引入中级调度?【解】(1)高级调度主要任务是用于决定把外存上处于后备队列中的那些作业调入内存,并为它们创建进程,分配必要的资源,然后再将新创建的进程排在就绪队列上,准备执行。

(2)低级调度主要任务是决定就绪队列中的哪个进程将获得处理机,然后由分派程序执行把处理机分配给该进程的操作。

(3)引入中级调度的主要目的是为了提高内存的利用率和系统吞吐量。

为此,应使那些暂时不能运行的进程不再占用宝贵的内存空间,而将它们调至外存上去等待,称此时的进程状态为就绪驻外存状态或挂起状态。

当这些进程重又具备运行条件,且内存又稍有空闲时,由中级调度决定,将外存上的那些重又具备运行条件的就绪进程重新调入内存,并修改其状态为就绪状态,挂在就绪队列上,等待进程调度。

3、何谓作业、作业步和作业流?【解】作业包含通常的程序和数据,还配有作业说明书。

系统根据该说明书对程序的运行进行控制。

批处理系统中是以作业为基本单位从外存调入内存。

作业步是指每个作业运行期间都必须经过若干个相对独立相互关联的顺序加工的步骤。

作业流是指若干个作业进入系统后依次存放在外存上形成的输入作业流;在操作系统的控制下,逐个作业进程处理,于是形成了处理作业流。

4、在什么情冴下需要使用作业控制块JCB?其中包含了哪些内容?【解】每当作业进入系统时,系统便为每个作业建立一个作业控制块JCB,根据作业类型将它插入到相应的后备队列中。

JCB 包含的内容通常有:1) 作业标识2)用户名称3)用户账户4)作业类型(CPU 繁忙型、I/O芳名型、批量型、终端型)5)作业状态6)调度信息(优先级、作业已运行)7)资源要求8)进入系统时间9) 开始处理时间10) 作业完成时间11) 作业退出时间12) 资源使用情况等5.在作业调度中应如何确定接纳多少个作业和接纳哪些作业?【解】作业调度每次接纳进入内存的作业数,取决于多道程序度。

《计算机组成原理》第3章习题答案

《计算机组成原理》第3章习题答案

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

第三章通用数据处理指令3.1 简答题(1)如何修改“MOV ESI, WORD PTR 250”语句使其正确?删除“WORD PTR”即可(2)为什么说“XCHG EDX,CX”是一条错误的指令?源、目标寄存器位数不同,不能用该指令进行数据交换(3)说IA-32处理器的堆栈“向下生长”是什么意思?入栈时堆栈指针寄存器做减法操作,指向低地址;出栈时堆栈指针寄存器做加法操作,指向高地址(4)都是获取偏移地址,为什么指令“LEA EBX,[ESI]”正确,而指令“mov ebx,offset [ESI]”就错误?LEA指令时运行时计算地址,OFFSET是汇编时取地址。

(5)执行了一条加法指令后,发现ZF=1,说明结果是什么?表明运算结果为0(6)INC、DEC、NEG和NOT都是单操作数指令,这个操作数应该是源操作数还是目的操作数?既是源操作数,也是目的操作数(7)大小写字母转换使用了什么规律?大小写字母转换利用它们的ASCII码相差20H(9)除法指令“DIV ESI”的被除数是什么?被除数64位,在EDX和EAX中,EDX保存高32位、EAX保存低32位(10)逻辑与运算为什么也称为逻辑乘?运算规则类似于2进制乘法。

3.2 判断题(1)指令“MOV EAX,0”使EAX结果为0,所以标志ZF=1。

错,MOV指令不影响标志(2)空操作NOP指令其实根本没有指令。

错,(3)堆栈的操作原则是“先进后出”,所以堆栈段的数据除了PUSH和POP指令外,不允许其他方式读写。

错(4)虽然ADD指令和SUB指令执行后会影响标志状态,但执行前的标志并不影响它们的执行结果。

对(5)80减90(80-90)需要借位,所以执行结束后,进位标志CF=1。

对,减法时借位也用CF标志反映(6)指令“INC ECX”和“ADD ECX,1”实现的功能完全一样,可以互相替换。

错,INC 不影响CF位。

(7)无符号数在前面加零扩展,数值不变;有符号数前面进行符号扩展,位数加长一位、数值增加一倍。

错,符号扩展也不改变数值大小(8)CMP 指令是目的操作数减去源操作数,与SUB指令功能相同错(9)逻辑运算没有进位或溢出问题,此时CF和OF没有作用,所以逻辑运算指令将CF和OF设置为0错(10)SHL指令左移一位,就是乘10。

错,左移一位,相当于乘2。

这里的位是二进制比特位3.3 填空题(1)指令“PUSH DS”执行后,ESP会 ____________.减 2(2)指令“POP EDX”的功能也可以用MOV和ADD指令实现,依次应该是__________和__________指令。

MOV EDX,[ESP],ADD ESP,4(3)例子3-3 的TAB定义如果是1234567890,则显示结果是 _______________ 78894111(4)进行8位二进制数加法:BAH+6CH,8位结果是__________,标志PF=__________。

如果进行16位二进制数加法:45BAH+786CH,16位结果是__________,标志PF=__________。

26H,0,BE26H,0(5)已知AX=98H,执行“NEG AX”指令后,AX=____,标志SF=___。

68H,0(6)假设CL=98H,执行“MOVZX DX,CL”后,DX = ______,这称为__________。

0098h,零位(7)假设CL=98H,执行“MOVSX DX,CL”后,DX = ______,这称为__________。

ff98h,符号(8)指令“XOR EAX, EAX”和“SUB EAX, EAX”执行后,EAX=___,CF=OF=___。

而指令“MOV EAX, 0”执行后,EAX=___,CF和OF没有变化。

0,0,0(9)例子3-9 的程序执行结束后,变量qvar的内容是_______0123456788765432(10)欲将EDX内的无符号数除以16,使用指令“SHR EDX, ____”,其中后一个操作数是一个立即数。

4习题3.4请给每种组合各举一个实例(1)mov reg, imm(2)mov mem, imm(3)mov reg, reg(4)mov mem, reg(5)mov seg, reg(6)mov reg, mem(7)mov seg, mem(8)mov reg, seg(9)mov mem, seg习题3.5操作数的组合通常符合逻辑,但是不能任意,指出下列指令的错误原因(1) mov ecx,dl 位数不同(2)mov eip,ax eip为专用寄存器(3)mov es,1234h 段寄存器不能直接用imm赋值(4)mov es,ds 段寄存器间不能相互赋值(5)mov al,300h 位数不同(6)mov [esi],45h 类型不明确(7)mov eax,ebx+edi 无该种寻址方式(8) mov 20h,al 立即数不能做操作数习题3.6使用MOV指令实现交换指令“XCHG EBX,[EDI]”功能。

解答:mov eax,ebxmov ebx,[edi]mov [edi],eax习题3.7什么是堆栈,它的工作原则是什么,它的基本操作有哪两个,对应指令是什么。

主存储器中的以“先进后出”规则访问的内存区,入栈、出栈,push ,pop习题3.11执行如下程序片断,说明每条指令的执行结果(1)mov eax,80hadd eax,3add eax,80hadc eax,3(2)mov eax,100add ax,200(3)mov eax,100add al,200(包含256的进位含义:256+44=300)(4)mov al,7fhsub al,8sub al,80hsbb al,3解答:(1)mov eax,80h ;EAX=80Hadd eax,3 ;EAX=83H,CF=0,SF=0add eax,80h ;EAX=103H,CF=0,OF=0adc eax,3 ;EAX=106H,CF=0,ZF=0(2)mov eax,100 ;EAX=100(64H)add ax,200 ;EAX=300(12CH),CF=0(3)mov eax,100 ;EAX=100(64H)add al,200 ;EAX=44(2CH),CF=1(包含256的进位含义:256+44=300)(4)mov al,7fh ;AL=7FHsub al,8 ;AL=77H,CF=0,SF=0sub al,80h ;AL=F7H,CF=1,OF=1sbb al,3 ;AL=F3H,CF=0,ZF=0习题3.12给出下列各条指令执行后al的值,以及CF、ZF、SF、OF和PF的状态。

Mov al,89hAdd al,alAdd al,9dhCmp al,0bchSub al,alDec alInc al解答:Mov al,89h ;89h,不影响标志位Add al,al ;12h,cf=1,zf=0,sf=0,of=1,pf=1Add al,9dh ;0afh,cf=0,zf=0,sf=1,of=0,pf=1Cmp al,0bch ;0afh,cf=1,zf=0,sf=1,of=0,pf=1Sub al,al ;0,cf=0,zf=1,sf=0,of=0,pf=1Dec al ;ffh,cf=0,zf=0,sf=1,of=0,pf=1Inc al ;0h,cf=0,zf=1,sf=0,of=0,pf=1习题3.13如下两段程序执行后,EDX.EAX寄存器对的值各是多少?(1)加法程序Mov edx,11hMov eax,0b0000000hAdd eax,040000000hAdc edx,0(2)减法程序Mov edx,100hMov eax,64000000hSub eax,84000000hSbb edx,0解答:(1)EDX=11EAX=0f0000000h(2)0ffh,0e00000000h习题3.14请分别用一条汇编语言指令完成如下功能:(1)把EBX寄存器和EDX寄存器的内容相加,结果存入EDX寄存器。

(2)用寄存器EBX和ESI的基址变址寻址方式把存储器的一个字节与AL寄存器的内容相加,并把结果送到AL中。

(3)用EBX和位移量0B2H的寄存器相对寻址方式把存储器中的一个双字和ECX寄存器的内容相加,并把结果送回存储器中。

(4)将32位变量VARD与数3412H相加,并把结果送回该存储单元中。

(5)把数0A0H与EAX寄存器的内容相加,并把结果送回EAX中。

解答:(1)把EBX寄存器和EDX寄存器的内容相加,结果存入EDX寄存器。

add edx,ebx(2)用寄存器EBX和ESI的基址变址寻址方式把存储器的一个字节与AL寄存器的内容相加,并把结果送到AL中。

add al,[ebx+esi](3)用EBX和位移量0B2H的寄存器相对寻址方式把存储器中的一个双字和ECX寄存器的内容相加,并把结果送回存储器中。

add [bx+0b2h],cx(4)将32位变量VARD与数3412H相加,并把结果送回该存储单元中。

add varw,3412h(5)把数0A0H与EAX寄存器的内容相加,并把结果送回EAX中。

add eax,0a0h习题3.15有两个64位无符号整数分别存放在变量buffer1和buffer2中,定义数据并编写代码完成edx.eax<- buufer1 - buffer2的功能。

解答:.dataBuffer1 qword ?Buffer2 qword ?.codeMov eax,dword ptr buffer1Mov edx,dword ptr buffer2 + 4Add eax,dword ptr buffer2Adc edx,dword ptr buffer2 + 4习题3.16执行如下程序片断,说明每条指令的执行结果(1)mov esi,10011100b ;ESI= _____Hand esi,80h ;ESI= _____Hor esi,7fh ;ESI= _____Hxor esi,0feh ;ESI= _____H(2)mov eax,1010b ;EAX= _____B(可有前导0)shr eax,2 ;EAX= _____B,CF=___shl eax,1 ;EAX= _____B,CF=___and eax,3 ;EAX= _____B,CF=___(3)mov eax,1011b ;EAX= ______B(可有前导0)rol eax,2 ;EAX= ______B,CF=_____rcr eax,1 ;EAX= ______B,CF=_____or eax,3 ;EAX= ______B,CF=_____(4)xor eax,eax ;EAX=____,CF=____,OF=____;ZF=_____,SF=_____,PF=___解答:(1)mov esi,10011100b ;ESI= 9CHand esi,80h ;ESI= 80Hor esi,7fh ;ESI= FFHxor esi,0feh ;ESI= 01H(2)mov eax,1010b ;EAX= 1010B(可有前导0)shr eax,2 ;EAX= 0010B,CF=1shl eax,1 ;EAX= 0100B,CF=0and eax,3 ;EAX= 0000B,CF=0(3)mov eax,1011b ;EAX= 1011B(可有前导0)rol eax,2 ;EAX= 101100B,CF=0rcr eax,1 ;EAX= 10110B,CF=0or eax,3 ;EAX= 10111B,CF=0(4)xor eax,eax ;EAX=0,CF=0,OF=0;ZF=1,SF=0,PF=1习题3.17给出下列各条指令执行后ax的结果,以及状态标志CF、OF、SF、ZF、PF的状态。

相关文档
最新文档