汇编语言1-3章答案

合集下载

钱晓捷新版汇编语言程序设计习题答案(1-4)

钱晓捷新版汇编语言程序设计习题答案(1-4)

钱晓捷新版汇编语言程序设计习题答案第一章汇编语言基础知识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种逻辑段,各种逻辑段分别是什么用途?(解答)代码段(Code Segment)用来存放程序的指令序列。

处理器利用CS : IP取得下一条要执行的指令•堆栈段(Stack Segment)确定堆栈所在的主存区域。

处理器利用SS : SP操作堆栈中的数据•数据段(Data Segment)存放当前运行程序所用的数据。

处理器利用DS : EA存取数据段中的数据•附加段(Extra Segment)是附加的数据段,也用于数据的保存。

处理器利用ES : EA存取数据段中的数据第二章8086指令系统2.1已知DS = 2000H、BX = 0100H、SI = 0002H,存储单元[20100H] ~ [20103H]依次存放12 34 56 78H,[21200H] ~ [21203H]依次存放2A 4C B7 65H,说明下列每条指令执行完后AX寄存器的内容。

(1) mov ax,1200h ;AX=1200h(2) mov ax,bx ; AX=0100h(3) mov ax,[1200h] ; AX=4C2Ah(4) mov ax,[bx] ; AX=3412h(5) mov ax,[bx+1100h] ; AX=4C2Ah(6) mov ax,[bx+si] ; AX=7856h(7) mov ax,[bx][si+1100h] ; AX=65B7h2.2指出下列指令的错误(1) mov cx,dl 两操作数类型不匹配(2) mov ip,ax IP 指令指针禁止用户访问(3) mov es,1234h 立即数不允许传给段寄存器(4) mov es,ds 段寄存器之间不允许传送(5) mov al,300 两操作数类型不匹配(6) mov [sp],ax 目的操作数应为[ BP ](7) mov ax,bx+di 源操作数应为 [BX+DI](8) mov 20h,ah 立即数不能作目的操作数2.3已知数字0 ~ 9对应的格雷码依次为:18H、34H、05H、06H、09H、0AH、0CH、11H、12H、14H,它存在于以table为首地址(设为200H)的连续区域中。

第一、二、三章复习题及答案

第一、二、三章复习题及答案

第一、二、三章复习题及答案一、判断正误题(共25题,每题1分)1.RAM所存储的数据只能读取,但无法将新数据写入其中。

(错)2.每一英寸磁带上所能存储的位数称为磁带密度,以bpi表示。

(对)3.计算机病毒是一种可以自我繁殖的特殊程序。

(对)4.激光打印机属于非击打式打印机。

(对)5.运算器是完成算术和逻辑操作的核心处理部件,通常称为CPU。

(错)6.通常,没有操作系统的计算机是不能工作的。

(对)7.计算机的指令是一组二进制代码,是计算机可以直接执行的操作命令。

(对)8.AUTOEXEC.BAT存放在任何目录下,均可在开机后自动执行。

(错)9.若路径以反斜杠"\"开始,DOS系统就从根目录开始查找命令中指定的文件,否则从当前目录开始查找。

(对)10.在对文件进行操作时,通常要用路径指定出该文件在当前盘中的位置,即在哪一级目录下。

如果被操作的文件在当前目录中,则可省略路径直接指出文件名。

(对)11.系统配置文件CONFIG.SYS一经修改立即生效。

(错)12.在Windows95中,用户不能对开始菜单进行添加或删除。

(错)13.保存文件时,在“另存为”对话框中可以选择文件存放的位置。

(对)14.Windows 95操作系统既允许运行Windows文件,也允许运行非Windows文件。

(对)15.当选定文件或文件夹后,欲改变其属性设置,可以用鼠标右键,然后在弹出的菜单中选择"属性"命令。

(对)16.在Windows95中不用物理键盘就不能向可编辑文件输入字符。

(错)17.在计算机中使用八进制和十六进制,是因为它们占用的内存容量比二进制少。

(错)18.每个汉字具有唯一的内码和外码。

(错)19.主存储器多半是半导体构成的,所以易受破坏。

(错)20.驱动器的读写头是接触着软盘的,所以读写头不可能被碰撞坏。

(错)21.存储器地址是代表某一内存位置的编号。

(对)22.存储器容量的大小可用KB为单位来表示,1KB表示1024个二进制位。

汇编语言第1-2章平时练习(已看完)

汇编语言第1-2章平时练习(已看完)

1. 知识点:0202(基于微处理器的计算机系统构成) 在下列的选项中,能够组成计算机系统的是(A)。

选项A)硬件系统和软件系统选项B)CPU、存储器、输入/输出设备选项C)操作系统、各种语言选项D)系统软件和应用软件2. 知识点:01 (基础知识)汇编语言属于( B)选项A)用户软件选项B)系统软件选项C)高级语言×选项D)机器语言×5知识点:0203(中央处理机)中央处理器CPU是由(D)组成的选项A)运算器选项B)控制器选项C)寄存器组选项D)前三者答案:D6. 知识点:0201(80x86微处理器)IBM PC机的DOS是属于(B )。

选项A)用户软件选项B)系统软件选项C)系统硬件选项D)一种语言8. 知识点:0203(中央处理机)8086/8088 CPU的寄存器组中,8位的寄存器共有(C )个选项A)4选项B)6选项C)8选项D)109. 知识点:0203(中央处理机)8086/8088 CPU的寄存器组中,16位的寄存器共有()个。

选项A)10选项B)12选项C)13选项D)1410. 知识点:0204(存储器)8086/8088 CPU执行算术运算时PSW共有()个标志位会受影响。

选项A)4选项B)5选项C)6 SF,ZF,CF,OF,PF.AF选项D)711. 知识点:0204(存储器)在程序执行过程中,IP寄存器始终保存的是()。

选项A)上一条指令的首地址选项B)本条指令的首地址选项C)下一条指令的首地址选项D)需计算有效地址后才能确定地址12. 知识点:0204(存储器)IBM PC机的存储器可分()个段。

选项A)4选项B)256选项C)512选项D)6553613知识点:0204(存储器)当使用BP作编程地址时,此时使用的是()段。

选项A)CS选项B)DS选项C)ES选项D)SS17知识点:0204(存储器)存储器的一个字节表示()位。

选项A)8选项B)16选项C)32选项D)6418知识点:0101(基于微处理器的计算机系统构成)如果某个字变量的数据存放在奇地址单元,则8086/8088 CPU读写该变量时需要()个读写周期。

王爽汇编语言答案(1-4)

王爽汇编语言答案(1-4)

王爽汇编语⾔答案(1-4)王爽汇编语⾔答案(1-4章)检测点chapter1检测点1.1(1)1个CPU的寻址能⼒为8KB,那么它的地址总线的宽度为13。

(2)1KB的存储器有个存储单元。

存储单元的编号从0000到1023。

(3)1KB的存储器可以存储个8192bit,1024个Byte。

(4)1GB、1MB、1KB分别是2^30 , 2^20 , 2^10Byte。

(5)8080、8088、80286、80386的地址总线宽度分别为16根、20根、24根、32根,则它们的寻址能⼒分别为:64(KB)、1(MB)、16(MB)、4(GB)。

(6)8080、8088、8086、80286、80386的数据总线宽度分别为8根、8根、16根、16根、32根则它们⼀次可以传送的数据为:1(B)、1(B)、2(B)、2(B)、4(B)。

(7)从内存中读取1024字节的数据,8086⾄少要读512次,80386⾄少要读256次。

(8)在存储器中,数据和程序以形式⼆进制存放。

chapter2检测点2.11.写出每条汇编指令执⾏后相关寄存器中的值。

指令寄存器mov ax, 62627AX = F4A3Hmov ah, 31H AX = 31A3Hmov al, 23H AX = 3123Hadd ax, ax AX = 6246Hmov bx, 826CH BX = 826CHmov cx, ax CX = 6246Hmov ax, bx AX = 826CHadd ax, bx AX = 04D8Hmov al, bh AX = 0482Hmov ah, bl AX = 6C82Hadd ah, ah AX = D882Hadd al, 6AX = D888Hadd al, al AX = D810Hmov ax, cx AX = 6246H2. 只能使⽤⽬前学过的汇编指令,最多使⽤4条指令,编程计算2的4次⽅。

IBM-PC汇编语言程序设计(第二版)答案1-8章

IBM-PC汇编语言程序设计(第二版)答案1-8章

///第一章. 习题1.1 用降幂法和除法将下列十进制数转换为二进制数和十六进制数:(1) 369 (2) 10000 (3) 4095 (4) 32767答:(1) 369=1 0111 0001b=171h(2) 10000=10 0111 0001 0000b=2710h(3) 4095=1111 1111 1111b=fffh(4) 32767=111 1111 1111 1111b=7fffh1.2 将下列二进制数转换为十六进制数和十进制数:(1) 10 1101 (2) 1000 0000 (3) 1111 1111 1111 1111 (4) 1111 1111答:(1) 10 1101b=2dh=45(2) 1000 0000b=80h=128(3) 1111 1111 1111 1111b=ffffh=65535(4) 1111 1111b=ffh=2551.3 将下列十六进制数转换为二进制数和十进制数:(1) fa (2) 5b (3) fffe (4) 1234答:(1) fah=1111 1010b=250(2) 5bh=101 1011b=91(3) fffeh=1111 1111 1111 1110b=65534(4) 1234h=1 0010 0011 0100b=46601.4 完成下列十六进制数的运算,并转换为十进制数进行校核:(1) 3a+b7 (2) 1234+af (3) abcd-fe (4) 7ab×6f答:(1) 3a+b7h=f1h=241(2) 1234+afh=12e3h=4835(3) abcd-feh=aacfh=43727(4) 7ab×6fh=35325h=2178931.5 下列各数均为十进制数,请用8位二进制补码计算下列各题,并用十六进制数表示其运算结果。

(1) (-85)+76 (2) 85+(-76) (3) 85-76 (4) 85-(-76) (5) (-85)-76 (6) -85-(-76)答:(1) (-85)+76=1010 1011b+0100 1100b=1111 0111b=0f7h;cf=0;of=0(2) 85+(-76)=0101 0101b+1011 0100b=0000 1001b=09h;cf=1;of=0(3) 85-76=0101 0101b-0100 1100b=0101 0101b+1011 0100b=0000 1001b=09h;cf=0;of=0(4) 85-(-76)=0101 0101b-1011 0100b=0101 0101b+0100 1100b=10100001b=0a1h;cf=0;of=1(5) (-85)-76=1010 1011b-0100 1100b=1010 1011b+1011 0100b=0101 1111b=5fh;cf=0;of=1(6) -85-(-76)=1010 1011b-1011 0100b=1010 1011b+0100 1100b=11110111b=0f7h;cf=0;of=01.6 下列各数为十六进制表示的8位二进制数,请说明当它们分别被看作是用补码表示的带符号数或无符号数时,它们所表示的十进制数是什么?(1) d8 (2) ff答:(1) d8h表示的带符号数为-40,d8h表示的无符号数为216;(2) ffh表示的带符号数为-1,ffh表示的无符号数为255。

第1-3章计算机组成原理课后习题答案

第1-3章计算机组成原理课后习题答案

第1章计算机系统概论1.1 什么是计算机系统、计算机硬件和计算机软件?硬件和软件哪个更重要?解:计算机系统由硬件和软件两大部分组成。

硬件即指计算机的实体部分,它由看得见摸得着的各种电子元器件,各类光、电、机设备的实物组成,如主机、外设等。

软件是看不见摸不着的,由人们事先编制成具有各类特殊功能的信息组成,用来充分发挥硬件功能,提高机器工作效率,便于人们使用机器,指挥整个计算机硬件系统工作的程序、资料、数据集合。

硬件和软件在计算机系统中相互依存,缺一不可,因此同样重要。

1.2 如何理解计算机系统的层次结构?解:(1)第一级:实际机器M1 (机器语言机器),机器语言程序直接在M1上执行;(2)第二级:虚拟机器M2(汇编语言机器),将汇编语言程序先翻译成机器语言程序,再在M1-上执行;(3)第三级:虚拟机器M3(高级语言机器),将高级语言程序先翻译成汇编语言程序,再在M2、M1(或直接到M1)上执行;(4)第零级:微程序机器M0(微指令系统),由硬件直接执行微指令。

(5)实际上,实际机器M1和虚拟机器M2之间还有一级虚拟机,它是由操作系统软件构成,该级虚拟机用机器语言解释操作系统。

(6)虚拟机器M3还可以向上延伸,构成应用语言虚拟系统。

1.3 说明高级语言、汇编语言和机器语言的差别及联系。

解:机器语言由0、1代码组成,是机器能识别的一种语言。

用机器语言编写程序时要求程序员对他们所使用的计算机硬件及其指令系统十分熟悉,编写程序难度很大,操作过程也极易出错。

汇编语言是符号式的程序设计语言,汇编语言是面向机器的语言,它由一些特殊的符号表示指令。

用汇编语言编写的汇编语言程序必须先被翻译成机器语言程序,才能被机器接受并自动运行。

汇编语言的每一条语句都与机器语言的某一条语句(0、1代码)一一对应。

高级语言是面向用户的语言,与具体的计算机指令系统无关、对问题的描述更接近于人们习惯,且易于掌握和书写。

它具有较强的通用性,程序员完全不必了解、掌握实际机器M1的机型、内部的具体组成及其指令系统,只要掌握这类高级语言的语法和语义,便可直接用这种高级语言来编程,给程序员带来了极大的方便。

1-3-4-5计算机组成原理课后习题答案

1-3-4-5计算机组成原理课后习题答案

第一章计算机系统概论习题答案1、答:计算机系统由硬件和软件两大部分组成。

硬件即指计算机的实体部分,它由看得见摸的着的各种电子元器件,各类光电、机设备的实物组成,如主机、外设等。

软件时看不见摸不着的,由人们事先编制成具有各类特殊功能的信息组成,用来充分发挥硬件功能,提高机器工作效率,便于人们使用机器,指挥整个计算机硬件系统工作的程序集合。

软件和硬件都很重要。

2、答:从计算机系统的层次结构来看,它通常可有五个以上的不同级组成,每一个上都能进行程序设计。

由下至上可排序为:第一级微程序机器级,微指令由硬件直接执行;第二级传统机器级,用微程序解释机器指令;第三级操作系统级,一般用机器语言程序解释作业控制语句;第四级汇编语言机器级,这一级由汇编程序支持和执行;第五级高级语言机器级,采用高级语言,由各种高级语言编译程序支持和执行,还可以有第六级应用语言机器级,采用各种面向问题的应用语言。

3、答:机器语言由0、1代码组成,是机器能识别的一种语言。

汇编语言是面向机器的语言,它由一些特殊的符号表示指令,高级语言是面向用户的语言,它是一种接近于数学的语言,直观,通用,与具体机器无关。

4、答:计算机组成是指如何实现计算机体系结构所体现的属性,它包含了许多对程序员来说是透明的硬件细节。

计算机体系结构是指那些能够被程序员所见到的计算机系统的属性,即概念性的结构与功能特性,通常是指用机器语言编程的程序员所看到的传统机器的属性,包括指令集、数据类型、存储器寻址技术、I/O机理等等,大都属于抽象的属性。

5、答:特点是:(1) 计算机由运算器、存储器、控制器和输入设备、输出设备五大部件组成(2) 指令和数据以同等的地位存放于存储器内,并可以按地址寻访(3) 指令和数据均可以用二进制代码表示(4) 指令由操作码和地址码组成,操作码用来表示操作的性质,地址码用来表示操作数所在存储器中的位置(5) 指令在存储器内按顺序存放。

通常,指令是顺序执行的,在特定情况下,可根据运算结果或根据设定的条件改变执行顺序(6) 机器以运算器为中心,输入输出设备与存储器的数据传送通过运算器。

汇编语言练习1 答案资料

汇编语言练习1 答案资料

一、单项选择题(本大题共20 小题,每小题 1 分,共20 分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。

错选、多选或未选均无分。

1. 下列寄存器组中在存储器操作数寻址时可用于提供偏移地址的是(D)A.AX ,BX ,CX ,DXB.SP ,BP ,SI ,DIC.CS ,ES ,DS ,SSD.BX ,BP ,SI ,DI2. 某存储单元的段地址是0AB90H ,偏移地址是1234H ,该存储单元的物理地址是(B)A.0BDC4HB.0ACB34HC.0AD134HD.1CED0H3. 执行NEG 指令时,要设置标志位CF 。

设置CF 的正确说法是(C)A. 对正数求补时,CF 置0B. 对负数求补时,CF 置0C. 对全0 数据求补时,CF 置0D. 对非零数据求补时,CF 置04. 设DF=1 ,每次执行CMPSW 指令时,SI 和DI 均要分别(B)A. 减1B. 减2C. 加1D. 加 25. 要使BL 中的低四位变反,高四位不变,应执行指令(D)A.NOT BLB.OR BL ,0FHC.AND BL ,0FHD.XOR BL ,0FH6. 设(AL )=07H ,要使(AL )=-07H 应执行的指令是(C)A.OR AL ,80HB.NOT ALC.NEG ALD.ADD AL ,80H7. 在8086/8088 的立即数寻址方式中,对寄存器的使用下列说法正确的是(D)A. 使用AX ,BX ,CX ,DXB. 使用SI ,DI ,BP ,SPC. 使用任一个通用寄存器D. 不使用任何寄存器8. 下列指令执行时操作数在数据段的是(D)A.MOV AX ,32768HB.ADD AL ,AHC.NEG BXD.INC [DI]9.MOV AL ,-1NEG ALXOR AL ,65上述指令执行后,AL 的值是()A.01HB.40HC.61HD.64H10. 设SP=4AH ,执行段内返回指令RET 4 后,SP 的值是(D)A.44HB.48HC.4CHD.50H11. 在查错程序DEBUG 中,为查看或修改内存单元的内容,这时存储单元地址是使用(A)A. 逻辑地址B. 物理地址C. 逻辑地址或物理地址D. 由用户指定选择逻辑地址或物理地址12. 设NUM=60H ,表达式:(NUM LT 60H AND 30 )OR (NUM GE 60H AND 40 )的值是(A)A.0B.3EHC.40D.0FFFFH13. 指令MOV CL ,55H XOR 0F0H 执行后CL 中的值是(C)A.05HB.50HC.0A5HD.0F5H14. 下面语句中能和指令MOV AX ,NOT 0FH 等效的是(C)A.MOV AX ,0FFFFHB.MOV AX ,0FHC.MOV AX ,0FFF0HD.MOV AX ,0F0FFH15. 对CS 段寄存器赋段地址的方法是(B)A.MOV AX ,COSEB.ASSUME CS :COSEC.END 起始地址D.MOV CS ,2050H16. 有数据定义BUF DB 8DUP (3 DUP (2 ),2 DUP (3 )),在BUF 中能构成数据0302H 有(C)A.5 个B.6 个C.7 个D.8 个17.X DW 1234H ,0A9BHY DB 7EH ,8DH┇MOV BH ,TYPE XMOV BL ,TYPE Y执行后BX 的内容是(D)A.0102HB.0101HC.1234HD.0201H18. 下面有语法错误的指令是(B)A.XCHG AX ,[BX]B.XCHG AX ,DSC.XCHG AX ,SID.XCHG AX ,BP19. 条件转移指令JBE 产生转移的条件是(D)A.CF=0 OR ZF=0B.CF=0 OR ZF=1C.CF=1 OR ZF=0D.CF=1 OR ZF=120.XOR AX ,426HJZ DONE上述程序段产生分支的条件是(A)A. 执行前AX=426HB. 执行前AX ≠ 426HC. 执行前AX= 全0D. 执行前AX= 全1二、填空题(本大题共 6 小题,每小题 1 分,共 6 分)请在每小题的空格中填上正确答案。

汇编语言模拟题答案-(3)

汇编语言模拟题答案-(3)

第3章自测练习一、选择题(四选一)1.表示一条处理器指令所在存储单元的符号地址是 C。

A变量 B常量 C标号 D偏移量2.汇编语言中的变量有多种类型属性,但错误的类型是B 。

A字节型byte B字符型charC字型word D双字型dword3.执行mov bx,seg var指令,BX得到变量var的B 。

A物理地址 B段地址 C偏移地址 D内容4.MASM语句中,采用C 分隔标号和指令。

A逗号 B分号 C冒号 D空格5.欲设定从偏移地址100H开始安排程序,可使用A 伪指令。

Aorg 100h Bstart=100hCstart db 100h Dstart equ 100h6.与“mov bx,offset var”指令等效的指令是 D 。

A movbx,varB 1dsbx,varCles bx,var D1ea bx,var.7.下条语句buf db l0 dup(3 dup(?,10),3,10)汇编后,变量buf占有的存储单元字节数是B 。

A 100B 80C 40D 208.数据定义语句“numl dw(12 or 6 and 2) ge 0eh”,定义的num1单元的内容是 B。

A 0B 0FFFFHC 1D 0FFH9.要求将A、B两个字符的ASCII码41H和42H顺序存放在连续两个字节存储单元中,可选用的语句是 A 。

A db`AB'B dw `AB'C db 0ABHD dw 0ABH10.在汇编语言程序中,对END语句叙述正确的是C 。

AEND语句是一可执行语句BEND语句表示程序执行到此结束CEND语句表示源程序到此结束DEND语句在汇编后要产生机器码11.下面的数据传送指令中,错误的操作是D。

Amov ss:[bx+di],byte ptr 10h Bmov dx,l000hCmov word ptr[bx],1000h Dmov ds,2000h12.下面指令执行后,变量dab中的内容是C 。

汇编语言程序设计第3章第一个程序3.5习题

汇编语言程序设计第3章第一个程序3.5习题

( 5 )把在单元 l00H 到 12BH 的符号码进行反汇编;-U CS:100 12B ( 6 )把 24A63BH 输人数据段内起始于 18AH 的存储单元。-E DS:18A 2 4 A 63B
7 .说明以下每一种文件的用途:
( l ) . ASM 文件 汇编源程序 ;
( 2 ). LST 文件 列表文件
C . F4000H
D . 2F800H
15 .汇编语言中的变量有多种类型属性,错误的类型是( B )。
A .字节型 byte B .字符型 char C .字型 word D .双字型 dword
3.5.2 问答题 1.下列变量各占多少字节?
NUMBYTE DB 1 , 10 DUP ( ? ) , ' $ ' 答:11 个字节
D .编译程序
13 .既对可执行程序(文件名.EXE )进行运行,也可以对其进行调试的程序
是( B )。
A . MASM
B . DEBUG
C . EDIT
D .LINK
14 .用 DEBUG 调试程序时,显示某指令的地址是 2F80:F400,此时段寄存器
CS 的值是( B )。
A . F400H
B . 2F80H
DATAB DW 10 DUP ( 0 )
;DS=1050 ,TYPE=2, LENDTH=10
SIZE=20
DATAC DB 5 DUP ( 0 , 1 , 2 DUP ( 3,4 ) , 5 ); DS=1050 ,TYPE=1, LENDTH=5 SIZE=5
DATA ENDS
EDATA SEGMENT NUMA DB 1 , 2 DUP ( 10 , 20 ) ;ES=1080,TYPE=1,LENGTH=1,SIZE=1 NUMB DW 10 DUP ( ?) , 10 ;ES=1080,TYPE=2,LENGTH=10,SIZE=20 NUMC DB ‘THANK YOU !’ , , ODH , OAH , ' $ ' ;ES=1080,TYPE=1,LENGTH=5,SIZE=5 EDATA ENDS

第3章答案指令系统1-40..

第3章答案指令系统1-40..

第3章指令系统1,简述下列基本概念:指令,指令系统,机器语言,汇编语言,高级语言。

1、指令:CPU根据人的意图来执行某种操作的命令指令系统:一台计算机所能执行的全部指令集合机器语言:用二进制编码表示,计算机能直接识别和执行的语言汇编语言:用助记符、符号和数字来表示指令的程序语言高级语言:独立于机器的,在编程时不需要对机器结构及其指令系统有深入了解的通用性语言2,什么是计算机的指令和指令系统?2、见第1题。

3,简述89C51汇编指令格式。

3、操作码[目的操作数] [,源操作数]4,简述89C51寻址方式和所能涉及的寻址空间。

5,要访问特殊功能寄存器和片外数据寄存器,应采用哪些寻址方式?5、SFR:直接寻址,位寻址,寄存器寻址;片外RAM:寄存器间接寻址6,在89C51片内RAM中,已知(30H)=38H, (38H)=40H, (40H)=48H, (48H)=90H, 请分析下面各是什么指令,说明源操作数的寻址方式以及按顺序执行每条指令后的结果。

6、MOV A,40H ;直接寻址(40H)→AMOV R0,A ;寄存器寻址(A)→R0MOV P1,#0F0H ;立即数寻址0F0→P1MOV @R0,30H ;直接寻址(30H)→(R0)MOV DPTR,#3848H ;立即数寻址3848H→DPTRMOV 40H,38H ;直接寻址(38H)→40HMOV R0,30H ;直接寻址(30H)→R0MOV P0,R0 ;寄存器寻址(R0 )→P0MOV 18H,#30H ;立即数寻址30H→18HMOV A,@R0 ;寄存器间接寻址((R0)) →AMOV P2,P1 ;直接寻址(P1)→P2最后结果:(R0)=38H,(A)=40H,(P0)=38H,(P1)=(P2)=0F0H,(DPTR)=3848H,(18H)=30H,(30H)=38H,(38H)=40H,(40H)=40H,(48H)=38H 注意:→左边是内容,右边是单元7,对89C51片内RAM的高128字节的地址空间寻址要注意什么7、用直接寻址,位寻址,寄存器寻址8,指出下列指令的本质区别。

汇编语言 第3章1 80x86的指令系统和寻址方式

汇编语言 第3章1 80x86的指令系统和寻址方式
– 4个段寄存器seg:
CS、DS、SS、ES
寄存器寻址指令
MOV AX,1234H MOV BX,AX ;AX←1234H ;BX←AX
寄存器寻址
3.1.4 存储器寻址方式
指令中给出操作数的主存地址信息(偏移
地址,称之为有效地址EA),而段地址在 默认的或用段超越前缀指定的段寄存器中
8086设计了多种存储器寻址方式
量之和,寄存器可以是BX、BP或SI、DI 有效地址=BX/BP/SI/DI+8/16位位移量
段地址对应BX/SI/DI寄存器默认是DS,对应BP
寄存器默认是SS;可用段超越前缀改变 MOV AX,[DI+06H]; mov ax,table[di] ;AX←DS:[DI+06H] MOV AX,[BP+06H] ;AX←SS:[BP+06H] 相对寻址
;AX←DS:[BX+SI+06H]
相对基址变址
位移量可用符号表示 同一寻址方式有多种表达形式
指令操作数的表达-寄存器
r8——任意一个8位通用寄存器
AH AL BH BL CH CL DH DL
r16——任意一个16位通用寄存器
AX BX CX DX SI DI BP SP
reg——代表r8或r16
(4)基址变址寻址方式
有效地址由基址寄存器(BX或BP)的内容加上
变址寄存器(SI或DI)的内容构成:
有效地址=BX/BP+SI/DI
段地址对应BX基址寄存器默认是DS,对应BP
基址寄存器默认是SS;可用段超越前缀改变 MOV AX,[BX+SI] ;AX←DS:[BX+SI] MOV AX,[BP+DI] ;AX←SS:[BP+DI] MOV AX,DS:[BP+DI] ;AX←DS:[BP+DI]

汇编语言程序设计第1阶段测试题

汇编语言程序设计第1阶段测试题

汇编语⾔程序设计第1阶段测试题江南⼤学现代远程教育第⼀阶段测试卷A考试科⽬:《汇编语⾔程序设计》第1章⾄第3章(总分100分)时间:90分钟______________学习中⼼(教学点)批次:层次:专业:学号:⾝份证号:姓名:得分:⼀、单选题(每题2分,共22分)1.下列指令中,不正确的指令是。

A.MOV [BX+SI],AX B.MOV AX,[BX + SI]C.MOV AX,SI D.MOV AX,[BX + CX]2、下列传送指令中有语法错误的是A、MOV CS,AXB、MOV DS,AXC、MOV SS,AXD、MOV ES,AX3.表⽰⼀条处理器指令所在存储单元的符号地址是。

A.变量B.常量C.标号D.偏移量4.如代码段段名为COSE,它的起始地址为20A00H,程序开始执⾏的起始地址标号为START,对代码段寄存器CS赋值段地址值的⽅法是。

A.MOV CS,20A0HB.ASSUME CS:COSEC.END STARTD.MOV AX,COSEMOV CS,AX5.11000110B为⼀个数的⼆进制补码,该数的⼗进制原码为。

A.+198 B.-198 C.+58 D.-586、指令“MOV CX,[BP+16]”的源操作数采⽤的段寄存器为。

A.CS B.SSC.DS D.ES7.指令“MOV ES:[2000H],AX”中,⽬的操作数的寻址⽅式为。

A.⽴即数寻址B.寄存器寻址C.存储器直接寻址D.寄存器间接寻址8.若(DS)=1100H,(SS)=2200H,(BP)=100H,(DI)=200H,指令MOV AX,[BP+DI+5]中源操作数的有效地址EA为。

A.11305H B. 22305H C.305H D.33305H9.16位⼆进制补码表⽰为⼗进制数的范围是。

A.-32768D~32768D B.-32768D~32767DC.-32767D~32768D D.-32767D~32767D10、BUF DW 10H DUP(3 DUP(2,10H),3,5)上述语句汇编后,为变量BUF分配的存储单元字节数是A、80HB、100HC、124D、19211.在汇编语⾔程序中,对END语句的叙述正确的是。

1-11章汇编测试题目(汇编网)

1-11章汇编测试题目(汇编网)

第1章汇编测试题目(后附答案)1、1个CPU读取1024字节的数据至少读取了512次,数据总线的宽度_____。

A、8B、10C、16D、322、在8086的内存空间中下面哪段内存是不可写的_____。

A、0~9FFFFB、A0000~B7FFFC、B8000~BFFFFD、C0000~FFFFF3、下列哪个计算机部件能确定一组二进制数是要执行的指令还是用于操作的数据_____。

A、显示器B、硬盘C、内存D、中央处理器4、关于总线的说法错误的是_____。

A、地址总线的宽度决定了CPU的寻址能力。

B、数据总线的宽度决定了CPU与外界进行数据传送时的一次数据传送量。

C、控制总线的宽度决定了CPU对系统中其它器件的控制能力。

D、总线就是负责CPU内部信息传送的一系列导线。

5、1KB的存储器有____个存储单元A、1000B、1024C、512D、2566、1个CPU的寻址能力为32KB,那么它的地址总线宽度为_____。

A、13B、15C、18D、32k7、1KB的存储器可以存储____个bit 。

A、1024B、8192C、1000D、88、1个CPU访问的最大内存地址是1023,地址总线的宽度_____。

A、8B、10C、13D、149、计算机中一个存储单元可以存储多少信息_____。

A、1bitB、1ByteC、1KBD、512B10、下列说法正确的是:____A、在计算机中,存储器分为指令存储器和数据存储器。

B、电子计算机的最小信息单位是Byte。

C、微型存储器的容量是以Byte为最小单位来计算的。

D、在“1KB=1024B”中,“B”代表的是Bit。

11、一个CPU的寻址能力为8KB,那么它的地址总线的宽度为____。

A、8B、10C、12D、1312、下列说法中正确的是____。

A、不同的微处理器有相同的机器指令集。

B、机器语言和汇编语言都需要编译程序来编译成机器指令。

C、每一个汇编指令都对应唯一的一个机器指令。

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

汇编语言课后习题及答案_按章节_超全面[1]

汇编语言课后习题及答案_按章节_超全面[1]

`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)字符。

汇编语言与接口技术课后答案(1-8章完整版)-王让定朱莹编(下载后可查看剩余几章内容)

汇编语言与接口技术课后答案(1-8章完整版)-王让定朱莹编(下载后可查看剩余几章内容)

第一章(下载后可查看)第二章1.8086/8088 CPU 的地址总线有多少位?其寻址范围是多少?答:8086/8088 CPU 的地址总线共20位, 最大可寻址1MB空间。

2.8086/8088 CPU分为哪两个部分?各部分主要由什么组成?答:8086/8088 CPU 分为总线接口部件(BIU)和执行部件(EU)两个部分。

其中BIU包括:4 个16 位的段地址寄存器(CS、DS、SS、ES);1个16位的指令指针寄存器IP;1个20位的地址加法器;指令队列寄存器;内部寄存器;输入输出总线控制逻辑;EU包括:4 个16 位的通用数据寄存器(AX、BX、CX、DX);4个16位的专用寄存器(BP、SP、SI、DI);1个16位的标志寄存器FR;4. 8086/8088 CPU 中有几个通用寄存器?有几个变址寄存器?有几个指针寄存器?通常哪几个寄存器亦可作为地址寄存器使用?答:8086/8088 CPU 中共有:8个16位的通用寄存器AX、BX、CX、DX 、BP、SP、SI、DI;2 个变址寄存器SI 、DI;2 个指针寄存器BP、SP;其中BX、BP、SI 、DI 亦可作地址寄存器。

5.8086/8088 CPU 中有哪些标志位?它们的含义和作用如何?答:8086/8088 CPU中共有9个标志位,其中DF、IF 和TF为控制标志位,其余6 个为状态标志位。

它们的含义和作用如下所示:CF(Carry Flag) 进位标志: 若算术运算的结果产生了进位或借位( 对字节操作最高位是D7位;对字操作最高位是D15位),则CF=1,否则CF=0。

PF(Parity/Even Flag) 奇偶标志:如果运算结果中含有偶数个1, 则PF=1,否则PF=0。

此标志位主要用于数据通信中, 检测数据传送有无出错。

AF(Auxiliary Carry Flag) 辅助进位标志: 用于反映一个字节( 字的低字节) 的低4位向高4位有无进位(借位)的情况,有进(借)位时,AF=1,否则AF=0。

王庆生主编的汇编语言程序设计课后答案习题1详解

王庆生主编的汇编语言程序设计课后答案习题1详解

习题11.1把下列十进制数转换为二进制数和十六进制数。

(1)67 (2)34 (3)254 (4)123答:(1)67D=1000011B=43H(2)34D=100010B=22H(3)254D=11111110B=0feH(4)123D=1111011B=7bH1.2把下列二进制数转换为十六进制数和十进制数。

(1)01101101 (2)10110010 (3)111111答:(1)01101101B=6dH=109D(2)10110010B=0d2H=208D(3) 111111B=3fH=63D1.3作下列十六进制数的运算,并转换为十进制数校核。

(1)5a+64 (2)86-49 (3)123-9a (4)43*2b 答:(1) 5aH+64H=0beH90D+100D=190D正确(2)86H-49H=3dH134D-73D=61D正确(3)123H-9aH=89H291D-154D=137D正确(4)43H*2bH=0b3fH67D*43D=2881D正确1.4下列各数均为十进制数,请采用八位二进制补码运算,并回答标致寄存器flags中CF和OF的值,运算结果所代表的十进制数是多少?如果用十六进制补码运算,其结果所代表的十进制数是多少?FLAGS中CF和OF的值呢?(1)85+69 (2)85+(-69) (3)85-(-69) (3)85-(69)答:(1)八位二进制01010101+01000101=10011010=-102D CF=0,OF=1十六位二进制0000000001010101+0000000001000101=0000000010011010 =154DCF=0,OF=0(2)八位二进制01010101+10111011=00010000=16D CF=1,OF=0十六位二进制0000000001010101+1111111110111011=0000000000010000 =16DCF=1,OF=0(3)八位二进制01010101-10111011=10011010=-102D CF=1,OF=1十六位二进制0000000001010101-1111111110111011=0000000010011010 =154DCF=1,OF=0(4)八位二进制01010101-01000101=00010000=16D CF=0,OF=0十六位二进制0000000001010101-0000000001000101=0000000000010000 =16DCF=0,OF=01.5 实模式下,写出段地址和偏移地址为1234:2002、1430:0042、FF00:0FFF的物理地址。

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

///第一章. 习题1.1 用降幂法和除法将下列十进制数转换为二进制数和十六进制数:(1) 369 (2) 10000 (3) 4095 (4) 32767答:(1) 369=1 0111 0001b=171h(2) 10000=10 0111 0001 0000b=2710h(3) 4095=1111 1111 1111b=fffh(4) 32767=111 1111 1111 1111b=7fffh1.2 将下列二进制数转换为十六进制数和十进制数:(1) 10 1101 (2) 1000 0000 (3) 1111 1111 1111 1111 (4) 1111 1111答:(1) 10 1101b=2dh=45(2) 1000 0000b=80h=128(3) 1111 1111 1111 1111b=ffffh=65535(4) 1111 1111b=ffh=2551.3 将下列十六进制数转换为二进制数和十进制数:(1) fa (2) 5b (3) fffe (4) 1234答:(1) fah=1111 1010b=250(2) 5bh=101 1011b=91(3) fffeh=1111 1111 1111 1110b=65534(4) 1234h=1 0010 0011 0100b=46601.4 完成下列十六进制数的运算,并转换为十进制数进行校核:(1) 3a+b7 (2) 1234+af (3) abcd-fe (4) 7ab×6f答:(1) 3a+b7h=f1h=241(2) 1234+afh=12e3h=4835(3) abcd-feh=aacfh=43727(4) 7ab×6fh=35325h=2178931.5 下列各数均为十进制数,请用8位二进制补码计算下列各题,并用十六进制数表示其运算结果。

(1) (-85)+76 (2) 85+(-76) (3) 85-76 (4) 85-(-76) (5) (-85)-76 (6) -85-(-76)答:(1) (-85)+76=1010 1011b+0100 1100b=1111 0111b=0f7h;cf=0;of=0(2) 85+(-76)=0101 0101b+1011 0100b=0000 1001b=09h;cf=1;of=0(3) 85-76=0101 0101b-0100 1100b=0101 0101b+1011 0100b=0000 1001b=09h;cf=0;of=0(4) 85-(-76)=0101 0101b-1011 0100b=0101 0101b+0100 1100b=10100001b=0a1h;cf=0;of=1(5) (-85)-76=1010 1011b-0100 1100b=1010 1011b+1011 0100b=0101 1111b=5fh;cf=0;of=1(6) -85-(-76)=1010 1011b-1011 0100b=1010 1011b+0100 1100b=11110111b=0f7h;cf=0;of=01.6 下列各数为十六进制表示的8位二进制数,请说明当它们分别被看作是用补码表示的带符号数或无符号数时,它们所表示的十进制数是什么?(1) d8 (2) ff答:(1) d8h表示的带符号数为-40,d8h表示的无符号数为216;(2) ffh表示的带符号数为-1,ffh表示的无符号数为255。

1.7 下列各数均为用十六进制表示的8位二进制数,请说明当它们分别被看作是用补码表示的数或字符的ascii码时,它们所表示的十进制数及字符是什么?(1) 4f (2) 2b (3) 73 (4) 59答:(1) 4fh表示的十进制数为79,4fh表示的字符为o;(2) 2bh表示的十进制数为43,2bh表示的字符为+;(3) 73h表示的十进制数为115,73h表示的字符为s;(4) 59h表示的十进制数为89,59h表示的字符为y。

1.8 请写出下列字符串的ascii码值。

for example,this is a number 3692.答:46h 6fh 72h 20h 65h 78h 61h 6dh 70h 6ch 65h 2ch 0ah 0dh54h 68h 69h 73h 20h 69h 73h 20h 61h 20h 6eh 75h 6dh 62h 65h 72h 20h 33h 36h 39h 32h 2eh 0ah 0dh第二章. 习题2.1 在80x86微机的输入/输出指令中,i/o端口号通常是由dx寄存器提供的,但有时也可以在指令中直接指定00~ffh的端口号。

试问可直接由指令指定的i/o端口数。

答:可直接由指令指定的i/o端口数为256个。

2.2 有两个16位字1ee5h和2a3ch分别存放在80x86微机的存储器的000b0h和000b3h单元中,请用图表示出它们在存储器里的存放情况。

答:存储器里的存放情况如右上图所示。

2.3 在ibm pc机的存储器中存放信息如右下图所示。

试读出30022h和30024h字节单元的内容,以及30021h 和30022h字单元的内容。

答:30022h字节单元的内容为abh;30024h字节单元的内容为efh。

30021h字单元的内容为ab34h;30022h 字单元的内容为cdabh。

2.4 在实模式下,段地址和偏移地址为3017:000a的存储单元的物理地址是什么?如果段地址和偏移地址是3015:002a和3010:007a呢?答:3017:000a、3015:002a和3010:007a的存储单元的物理地址都是3017ah。

2.5 如果在一个程序开始执行以前(cs)=0a7f0h,(如16进制数的最高位为字母,则应在其前加一个0) (ip)=2b40h,试问该程序的第一个字的物理地址是多少?答:该程序的第一个字的物理地址是0aaa40h。

2.6 在实模式下,存储器中每一段最多可有10000h个字节。

如果用调试程序debug的r命令在终端上显示出当前各寄存器的内容如下,请画出此时存储器分段的示意图,以及条件标志of、sf、zf、cf的值。

c>debug-rax=0000 bx=0000 cx=0079 dx=0000 sp=ffee bp=0000si=0000 di=0000 ds=10e4 es=10f4 ss=21f0 cs=31ffip=0100 nv up di pl nz na po nc答:此时存储器分段的示意图如右图所示。

of、sf、zf、cf的值都为0。

2.7 下列操作可使用那些寄存器?(1) 加法和减法数据寄存器等(2) 循环计数cx(3) 乘法和除法 ax、dx,乘数和除数用其他寄存器或存储器(4) 保存段地址段寄存器(5) 表示运算结果为0 zf=1(6) 将要执行的指令地址cs:ip(7) 将要从堆栈取出数据的地址ss:sp答:答案见题目的右边。

2.8 那些寄存器可以用来指示存储器地址?答:bx、bp、si、di、堆栈操作时的sp、对应的段地址、386及其后继机型的exx。

2.9 请将下列左边的项和右边的解释联系起来(把所选字母放在括号中):(1) cpu (m) a.保存当前栈顶地址的寄存器。

(2) 存储器(c) b.指示下一条要执行的指令的地址。

(3) 堆栈(d) c.存储程序、数据等信息的记忆装置,微机有ram和rom两种。

(4) ip (b) d.以后进先出方式工作的存储空间。

(5) sp (a) e.把汇编语言程序翻译成机器语言程序的系统程序。

(6) 状态标志(l) f.唯一代表存储空间中每个字节单元的地址。

(7) 控制标志(k) g.能被计算机直接识别的语言。

(8) 段寄存器(j) h.用指令的助记符、符号地址、标号等符号书写程序的语言。

(9) 物理地址(f) i.把若干个模块连接起来成为可执行文件的系统程序。

(10) 汇编语言(h) j.保存各逻辑段的起始地址的寄存器,8086/8088机有四个:cs、ds、ss、es。

(11) 机器语言(g) k.控制操作的标志,如df位。

(12) 汇编程序(e) l.记录指令操作结果的标志,共6位:of、sf、zf、af、pf、cf。

(13) 连接程序(i) m.分析、控制并执行指令的部件,由算术逻辑部件alu和寄存器等组成。

(14) 指令(o) n.由汇编程序在汇编过程中执行的指令。

(15) 伪指令(n) o.告诉cpu要执行的操作(一般还要指出操作数地址),在程序运行时执行。

答:答案见题目的括号中。

第三章. 习题3.1 给定(bx)=637dh,(si)=2a9bh,位移量d=7237h,试确定在以下各种寻址方式下的有效地址是什么?(1) 立即寻址(2) 直接寻址(3) 使用bx的寄存器寻址(4) 使用bx的简接寻址(5) 使用bx的寄存器相对寻址(6) 基址变址寻址(7) 相对基址变址寻址答:(1) 操作数在指令中,即立即数;(2) ea=d=7237h;(3) 无ea,操作数为(bx)=637dh;(4) ea=(bx)=637dh;(5) ea=(bx)+d=0d5b4h;(6) ea=(bx)+(si)=8e18h;(7) ea=(bx)+(si)+d=1004fh;超过了段的边界,最高进位位丢失,因此ea=004fh。

3.2 试根据以下要求写出相应的汇编语言指令(1) 把bx寄存器和dx寄存器的内容相加,结果存入dx寄存器中。

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

(3) 用寄存器bx和位移量0b2h的寄存器相对寻址方式把存储器中的一个字和(cx)相加,并把结果送回存储器中。

(4) 用位移量为0524h的直接寻址方式把存储器中的一个字与数2a59h相加,并把结果送回存储单元中。

(5) 把数0b5h与(al)相加,并把结果送回al中。

答:(1) add dx, bx(2) add al, [bx][si](3) add [bx+0b2h], cx(4) add word ptr [0524h], 2a59h(5) add al, 0b5h3.3 写出把首地址为block的字数组的第6个字送到dx寄存器的指令。

要求使用以下几种寻址方式:(1) 寄存器间接寻址(2) 寄存器相对寻址(3) 基址变址寻址答:(1) mov bx, offset blockadd bx, (6–1)*2mov dx, [bx](2) mov bx, offset block 改为:mov bx, (6-1)*2mov dx, [bx+(6–1)*2] 也可mov dx, block[bx](3) mov bx, offset blockmov si, (6–1)*2mov dx, [bx][si]3.4 现有(ds)=2000h,(bx)=0100h,(si)=0002h,(20100h)=12h,(20101h)=34h,(20102h)=56h,(20103h)=78h,(21200h)=2ah,(21201h)=4ch,(21202h)=b7h,(21203h)=65h,试说明下列各条指令执行完后ax寄存器的内容。

相关文档
最新文档