收藏 分销(赏)

微机原理与接口技术习题.doc

上传人:pc****0 文档编号:7776480 上传时间:2025-01-16 格式:DOC 页数:37 大小:454.50KB
下载 相关 举报
微机原理与接口技术习题.doc_第1页
第1页 / 共37页
微机原理与接口技术习题.doc_第2页
第2页 / 共37页
微机原理与接口技术习题.doc_第3页
第3页 / 共37页
微机原理与接口技术习题.doc_第4页
第4页 / 共37页
微机原理与接口技术习题.doc_第5页
第5页 / 共37页
点击查看更多>>
资源描述

1、习题一 概 述主要内容:计算机系统的组成和各部分的作用,微型计算机组成,微处理器的结构;计算机中的信息表示; 微机系统的结构特点。1.1 微处理器、微型计算机和微型计算机系统三者之间有什么不同?将运算器与控制器集成在一起,称为微处理器。微处理器是微处理器的核心。微型计算机是由微处理器、存储器、输入/输出接口电路和系统总线构成的裸机系统。微型计算机系统是以微型计算机为主机,配上系统软件和外设之后而构成的计算机系统。三者之间是有很大不同的,微处理器是微型计算机的一个组成部分,而微型计算机又是微型计算机系统的一个组成部分。 1.2 CPU在内部结构上由哪几部分组成?CPU应具备什么功能?CPU在内部

2、结构上由算术逻辑部件(ALU);累加器和通用寄存器组;程序计数(指令指针)、指令寄存器和译码器;时序和控制部件几部分组成。不同CPU的性能指标一般不相同,但一般CPU应具有下列功能:可以进行算术和逻辑运算;可保存少量数据;能对指令进行译码并执行规定的动作;能和存储器、外设交换数据;提供整个系统所需要的定时和控制;可以响应其它部件发来的中断请求。1.3 累加器和其他通用寄存器相比有何不同?累加器是比较特殊的通用寄存器。它在某些指令执行前,它可以保存一源操作数,还在执行后又用来保存运算结果,另外它一般也用来完成输入/输出指令。而通用寄存器则一般只用来保存参加运算的数据、运算的中间的结果以及用来保存

3、地址。1.3 微型计算机采用总线结构有什么优点?微型计算机的总线结构是一个独特的结构。有了总线结构以后系统中各功能部件之间的相互关系变为了各功能部件面向总线的单一关系。一个部件只要符合总线标准,就可以连接到采用这种总路线标准的系统中,使系统功能得到扩展。 1.4 控制总线传输的信号大致有哪几类?控制总线用来传输控制信号:其中包括CPU送往存储器和输入/输出接口电路的控制信号,如读信号、写信号和中断响应信号等;还包括其它部件送到CPU的信号,比如,时钟信号、中断请求和准备就绪信号。1.5数据总线和地址总线在结构上有什么不同之处?如果一个系统的数据和地址合用一套总线或者合用部分总线,那么要靠什么来

4、区分地址和数据?从结构上看数据总线是双向的,而地址总线从结构上看却是单向的。如果一个系统的数据总线和地址总线合用一套总线或者合用部分总线,一般可利用时钟,在总线上采用分时复用技术来区分地址和数据,例如可在总线周期的若干个时钟周期,约定某周期传输地址、在另一周期传输数据。1.6 将下列十进制数转换成8421BCD码:1049 =0001 0000 0100 1001 902=1001 0000 0010851.37=1001 0101 0001 . 0011 0111 0.6259=0000. 0110 0010 0101 1001 1.7 将下列各组数用八位的补码相加:(+75)+(-6)+7

5、5补=0100 1011 -6 补=1000 0110+75补+ -6 补=1000 0110+1000 0110=0100 0101习题二 IA-32结构微处理器(重点:8086CPU)主要内容:主要介绍80868088CPU内部结构。了解80X86CPU的特点。(1.2.1 8086 CPU在内部结构上由哪几部分组成?其功能是什么? 【答】8086的内部结构成两部分:总线接口部件BIU,负责控制存储器读写。执行部件EU,EU从指令队列中取出指令并执行。8086是16位微处理器,有16根数据线、20根地址线,内部寄存器、运算部件以及内部操作都是按16位设计的。2.2 8086的总线接口部件有

6、那几部分组成? 【答】8086的总线接口部件主要由下面几部分组成:4个段寄存器CS/DS/ES/SS, 一个16位的指令指针寄存器IP, 一个20位地址加法器, 6字节的指令队列,内部暂存器以及输入输出电路组成.2.3 8086的执行部件有什么功能?由那几部分组成?【答】8086的执行部件主要由下面几部分组成:(1)四个16位通用寄存器AX、BX、CX、DX, 通用四个16位专用寄存器,包括二个指针寄存器SP、BP, 二个变址寄存器SI、DI, 算术逻辑单元ALU,标志寄存器。2.4 8086CPU状态标志和控制标志又何不同?程序中是怎样利用这两类标志的? 8086的状态标志和控制标志分别有哪

7、些? 【答】标志分两类:状态标志(6位):反映刚刚完成的操作结果情况。控制标志(3位):在某些指令操作中起控制作用。2.5 8086/8088和传统的计算机相比在执行指令方面有什么不同?这样的设计思想有什么优点? 8086CPU执行转移指令时,指令队列寄存器内容如何变化?【答】传统的计算机一般按照取指令、指令译码/执行指令的步骤工作。在8086/8088中,指令的提取与执行分别由总线接口部件BIU与执行部件EU完成,8086/8088可以在取指令同时又可以执行指令,这种并行工作方式有力的提高了CPU的工作效率。2.6 将两数相加,即0100 1100加 0110 0101,CF、PF、AF、Z

8、F、SF、OF各为何值?【答】0100 1100+0110 0101=10110001 CF=0,PF=1,AF=1,ZF=0,SF=1,OF=12.7 存储器的逻辑地址由哪几部分组成?存储器的物理地址是怎样形成的?一个具有20位地址线的CPU,其最大物理地址为多少?【答】存储器的逻辑地址由段地址与段内偏移地址组成。存储器的物理地址:将16位段地址左移4位后加上16位段内偏移地址,形成20位物理地址。一个具有20位地址线的CPU,其最大物理地址为=1MB。2.8 现有6个字节的数据分别为11H,22H,33H,44H,55H,66H,已知它们在存储器中的物理地址为400A5H400AAH若当前

9、(DS)= 4002H,请说明它们的偏移地址值。如果要从存储器中读出这些数据,需要访问几次存储器,各读出哪些数据?【答】由于:物理地址=400A5H=段地址*16+偏移地址=40020H+偏移地址偏移地址=400A5+40020=85H 从奇地址400A5H中读出:11H;从偶地址400A6H读出一个字:22H,33H;从偶地址400A8H读出一个字:44H,55H;从偶地址400AAH中读出:66H。共读4次。2.9 已知当前数据段中存有如下图所示的数据,现要求将最后两个字节改成ODH,OAH,请说明需给出的段基值和偏移地址值,并说明其写入过程。14800 150A1150A2150A315

10、0A4150A5数据段首地址 【答】数据段段地址=150AH,偏移地址=0004H。CPU的总线接口部件根据数据段寄存器的内容150AH,左移4位,在加上偏移地址0004H,形成20位物理地址150A4H,由总线接口送出,选中物理存储单元150A4H、150A5H,数据0DH通过数据总线送入150A4H,数据0AH通过数据总线送入150A4H。 2.10 在 8088/8086中,逻辑地址FFFF0001, 00A237F和B800173F的物理地址分别是多少?2.11 在 8088/8086中,从物理地址388H开始顺序存放下列三个双字节的数据,651AH, D761H和007BH,请问物理

11、地址388H, 389H, 38AH, 38BH, 38CH和38DH 6个单元中分别是什么数据?2.12 8086/8088内部有哪些通用寄存器? 2.13 8086/8088 内部有几个段寄存器,阐述各段寄存器的用途?2.14 8086CPU的形成三大总线时,为什么要对部分地址线进行锁存?用什么信号控制锁存?【答】 为了确保CPU对存储器和I/O端口的正常读/写操作,要求地址和数据同时出现在地址总线和数据总线上。而在8086CPU中AD0-AD15总线是地址/数据复用的,因此需在总线周期的前一部分传送出地址信息,并存于锁存器中,而用后一部分周期传送数据。8086CPU中是通过CPU送出的A

12、LE高电平信号来控制锁存的。 2.15 段寄存器CS=1200H,指令指针寄存器IP=4000H,此时,指令的物理地址为多少?指向这一物理地址的CS值和IP值是唯一的吗?【答】 此时,指令的物理地址为16000H;这一物理地址的CS值和IP值不是唯一的,例如:CS=1000H,IP=6000H。 (2. 80386CPU选择教学内容)2.14 80386最重要的技术特点是什么?【答】速度大大提高:时钟达12MHZ/16MHZ, 寻址空间大大扩展:4GB物理空间,64GB虚拟空间, 除了保持80286的实地址方式和保护方式外,增加了虚拟8086方式 80386设置了转换检测缓冲器,大大加快了存储

13、器访问速度。2.15 虚拟8086方式有什么特色?为什么要设置这种方式?【答】可以执行8086的应用程序。段寄存器的用法和实地址方式时一样,即段寄存器内容左移4位加上偏移量为线性地址。存储器寻址空间为一兆字节,然而可以使用分业方式,将一兆字节分为256个业面,每页4K字节。在80386多任务系统中,可以其中一个或几个任务使用虚拟8086方式。此时,一个任务使用的全部页面可以定位于某个物理地址空间,另一个任务的页面可以定位于其他区域,即每个虚拟8086方式下的任务可以转换到物理存储器的不同位置,这样,把存储器虚拟化了,虚拟8086方式的名称正是由此而来。虚拟8086方式中,程序在最低特权级上运行

14、,因此,80386指令系统中的一些特权指令不能使用。虚拟8086方式是80386中很重要的设计特点,他可以使大量的8086软件有效的与80386保护方式下的软件并发运行。2.16 80386的实地址方式用于什么时候?为什么说它是为建立保护方式作准备的方式?实地址工作方式有什么特点?【答】80386的实地址方式用于为80386进行初始化用的。常常在实地址方式,为80386保护方式所需要的数据结构做好各种配置和准备,因此,这是一种为建立保护方式作准备的方式。实地址工作方式的特点:1、寻址机构、存储器管理、中断处理机构均和80386一样。2、操作数默认长度为16位,但允许访问80386的32位寄存器

15、组,在使用是,指令中要加上前缀以表示越权存取。 3、不用虚拟地址的概念存储器容量最大1M字节。4、实地址方式下,存储器中保留两个固定区域,一个为初始化程序区,另一个为中断向量区。5、80386具有4个特权级,实地址方式下,程序在最高级(0级)上执行。2.1780386采用拿几种描述符表?这些表的设置带来什么优点?【答】80386共设计三中描述符表即:全局描述符表,局部描述符表,中断描述浮表。采用描述符表带来如下三方面的优点:1可以大大扩展存储空间;2 可以实现虚拟存储;3 可以实现多任务隔离。2.18 80386在3种工作方式下,段的长度有什么差别?实地址方式:段的大小固定 64K字节;保护方

16、式:段的大小是可以选择的,1字节到4千兆字节;虚拟8086方式:对程序员来说,段长度固定为64K。2.19 Intel86系列CPU是从哪一种芯片开始采用RISC技术的?你能说说RISC技术最重要的特点和优点吗?【答】80486是首次采用RISC技术的。80486把80386和浮点运算协处理器80387及8KB的超高速缓存器集中到一个芯片中,且支持二级Cache。80486能在一个时钟周期执行一条指令。2.20 80486和80386相比,有什么技术特点?【答】 80486是首次采用RISC技术的;采用片内高速缓存和片内浮点运算协处理器; 80486采用一种突发式总线方式实现CPU和内存的高速

17、数据交换;80386可以模拟多个8086来实现多任务功能。2.21 80386SL和80486SL芯片有什么特点?主要用于什么场合?【答】 80386SL不但具有80386的三种工作方式,还增加了一种系统管理方式(SMM),在这种方式,CPU会根据不同的使用环境自动减速运行或停止运行,还可以控制其他部件停止工作,从而使微机系统的功耗最小。 80386SL采用静态CMOS工艺制造技术。80486SL和80386SL类似,采用SMI中断以减少功耗,用于便携机。2.22 Pentium有哪些技术特点?你认为在Pentium基础上主要应从哪几个方面可再作改进?【答】 采用超标量双流水线结构,每个流水线

18、包含5个步级。 内部采用2个彼此独立的8KB数据高速缓存,这两个高速缓存可以同时被访问。 Pentium内部数据总线为32位,但是cpu和内存进行数据交换的外部数据总线为64位,使一个总线周期的数据传输量提高一倍。 采用36位地址总线,扩展了寻址空间。 对mov.push.dec.inc等常用指令不用微程序而用硬件实现;采用分支预测技术提高流水线效能。 采用分支预测技术提高流水线效能。 浮点运算执行过程分为8个流水步级。pentium也存在一些缺点,如功耗大,达15w,浮点运算功能仍低于一些RISC处理器。习题三 8086指令系统主要内容: 8086指令系统。主要介绍8086的基本数据类型、寻

19、址方式和指令系统,重点掌握8086指令系统的寻址方式、堆栈操作指令、算术运算指令及其对标志位的影响,串操作指令,控制传送指令。3.1下面这些指令哪些是正确的?哪些是错误的?如是错误的,请说明原因。XCHG CS,AX () MOV BX,1000 () PUSH CS () POP CS () IN BX,DX ()3.2单选题:(1)执行下面指令序列后,结果是( )。MOV AL,82HCBWA、AX=0FF82HB、AX=8082HC、AX=0082HD、AX=0F82H【答】A(2)与MOV BX,OFFSET VAR指令完全等效的指令是( )。A、MOV BX,VARB、LDSBX,V

20、ARC、LESBX,VARD、LEA BX,VAR【答】D(3)编写分支程序,在进行条件判断前,可用指令构成条件,其中不能形成条件的指令有( )。A、CMPB、SUBC、ANDD、MOV【答】D(4)下面指令执行后,改变AL寄存器内容的指令是( )。A、TEST AL,02HB、OR AL,ALC、CMP AL,BD、AND AL,BL【答】D(5)设DH=10H,执行NEG DH指令后,正确的结果是( )。A、DH=10H CF=1B、DH=0F0H CF=0C、DH=10H CF=0D、DH=0F0H CF=1【答】D(6)设DS=8225H,DI=3942H,指令NEG BYTE PTR

21、DI操作数的物理地址是( )。A、85B92HB、86192HC、BB690HD、12169H【答】A(7)检查BUF的内容是否为正偶数,如是正偶数,则0TAL。下面程序段正确的是( )。A、MOVAL,BUFJSK1SHRAL,1JNCK1MOVAL,0K1:B、MOVAL,BUFANDAL,11JNZK2MOVAL,0K2:C、MOVAL,BUFTESTAL,81HJNZK3MOVAL,0K3:D、MOVAL,BUFJNPK4TESTAL,80HJNZK4MOVAL,0K4:【答】C(8)下列指令中,执行速度最快的是( )。A、MOV AX,100 B、MOV AX,BX C、MOV AX

22、,BX D、MOV AX,BX+BP【答】C3.3已知(DS)= 091DH,(SS)= IE4AH,(AX)= 1234H,(BX)= 0024H,(CX)= 5678H, (BP)= 0024H,(SI)= 0012H,(DI)= 0032H,09226 = 00F6H,09228=1E40H, lE4F6=091DH,试求单独执行下列指令后的结果?(l)MOVCL ,20H BXSI;【答】由于源操作数有效地址EA=20H+0024H+0012H=0056H, 其物理地址PA=DS*16+EA=091DH*16+56H=09226H, 因此(CL)= F6H(2)MOVBPDI,CX;

23、【答】由于目的操作数有效地址EA= 0024H0032H=0056H, 目的操作数物理地址PA= SS*16+EA=1E4A0H+0056H=1E4F6H, 因此1E4F6=5678H(3)LEABX ,20HBXSIMOVAX ,2BX【答】第一条指令:源操作数物理地址PA091D0H+(20+0024H+0012H)=09226H,因此(BX)=0056H 第二条指令:源操作数物理地址PA091D0H+(2+0056)=09928H, 因此(AX)=1E40H(4)LDSSI ,BXDIMOVSI,BX 【答】第一条指令: 源操作数物理地址PA=091D0H+(0024H+0032H)=0

24、9226H因此(SI)= 00F6H, (DS)=1E40H第一条指令:目的操作数物理地址PA1E400H+00F6H=1E4F6H因此1E4F6H单元的内容为0024H, 即1E4F6H=0024H(5)XCHGCX,32HBX XCHG20BXSI ,AX 【答】同理可得:(CX)= 00F6H(AX)= 00F6H, 09226H= 1234H3.48086 CPU执行如下指令后MOV AL,01100100BSUB AL,58H;(AL)=0CH,AF=1,CF=0DAS;(AL)=06 ,AF=1,CF=0【答】首先用TD调试验证上面的结果;自己定义两个数据,重新验证,写出结果。3.

25、5设(IP)= 3D8F H,(CS)= 4050H,(SP)= 0F17C H,当执行CALL 2000:0094H后,试求出 IP、CS、SP、SP、SP1SP2 和SP3的内容?【答】(IP)=0094H ,( CS)=2000H ,(SP)=F178H SP=8FH , SP+1=3DH , SP+2=50H, SP3=40H, SP+3=40H3.6设(DS)= 2000H,(BX)= 1256H,(SI)= 528FH,TABLE的偏移量= 20A1H,232F7H=3280H, 264E5H = 2450H,执行下述指令 (1)JMP BX ;IP= 1256H (2)JMP T

26、ABLEBX ;IP= 3280H (3)JMP BXSI ;IP= 2450H3.7分别用一条语句实现下述指明的功能(1)栈顶内容弹出送字变量DI。( POP DI )(2)双字变量AYD存放的地址指针送ES和SI。( LES SI ,AYD )(3)不允许中断即关中断。( CLI )(4)子程序返回调用程序。( RET )(5)AX的内容加1,要求不影响CF。( INC AX )(6)BX的内容加1,要求影响所有标志位。( ADDBX, 1 )(7)若操作结果为零转向标号GOON。( JZGOON )3.8 80868088用什么途径来更新CS和IP的值?【答】执行CALL、JMP、INT

27、指令,可以改变CS和IP中的值,即改变程序走向。 3.9 字节扩展指令和字扩展指令用在什么场合?举例说明。【答】需要对带符号数字节扩展为字时,要预先执行CBW指令。需要对带符号数字扩展为双字时,要预先执行CWD。【答】例:求-503/267=?,将商存1000H单元.MOV AX,-503MOV BX,267CWDIDIVMOV 1000H,AXHLT3.10 设DS=2100H,SS=5200H,BX=1400H,BP=6200H,说明下面两条指令所进行的具体操作:MOVWORD PTR BP, 2000MOVWORD PTR BX, 20003.11以下是格雷码的编码表00000 ,100

28、01 ,20011, 30010, 4011050111 ,60101, 70100, 81100, 91101请用换码指令和其他指令设计一个程序段,实现格雷码往ASCII的转换。【答】格雷码ASCII码000030H000131H001033H001132H010037H010136H011034H011135H10000100101010010110110038H110139HTABLESEGMENTTAB_DA DB 30H,31H,33H,32H,37H,36H,34H,35H,0,0DB 0,0,38H,39HGRA DB 05H ASCII_DA DB ? TABLEENDSCOD

29、ESEGMENTASSUME CS:CODE,DS:TABLESTART: MOVAX,TABLE MOVDS,AX MOVBX,OFFSET TAB_DA MOVAL,GRAXLATMOV ASCII_DA,ALCODEENDSENDSTART3.12 8086状态标志寄存器中,作为控制用的标志位有( 3 )个,其中,不可用指令操作的是(DF、 IF、 TF)3.13 设当前的SP=1000H,执行PUSHF指令后,SP=(0FFE H),若改为执行INT 20H指令后,则SP=( 0FFA H)。【答】执行PUSHF指令后,SP=(0FFE H)。执行INT 20H指令后,则SP=( 0F

30、FA H)。3.14 设当前SS=2010H,SP=FE00H,BX=3457H,计算当前栈顶的地址为多少?当执行PUSH BX 指令后,栈顶地址和栈顶2个字节的内容分别是什么?【答】当前栈顶指针(SP)=2FF00H,物理地址20100H+FE00H=2FF00H 当执行PUSH BX 指令后,栈顶指针(SP)=FE00-2=FDFEH,栈顶物理地址2FDFEH,栈顶2个字节的内容分别57H,34H。3.15 HLT指令用在什么场合?如CPU 在执行HLT 指令时遇到硬件中断并返回后,以下应执行哪条指令?【答】HLT用在使CPU处于暂停状态而等待硬件中断的场合。 在执行HLT指令遇到硬件中断

31、并返回后将执行HLT后面的一条指令。3.16 为什么用増量指令或减量指令设计程序时,在这类指令后面不用进位标志作为判断依据?【答】増量指令或减量指令不影响进位标志CF。3.17 用普通运算指令执行BCD码运算时,为什么要进行十进制调整?具体讲,在进行BCD码的加、减、乘、除运算时,程序段的什么位置必须加上十进制调整指令?【答】在BCD码中,采用4位二进制数对一个十进制数的编码,只允许09这10个数字出现,但CPU运算结果一般会超过此范围,因此要进行十进制调整。进行加、减法或乘法运算时,调整指令必须紧跟在算术指令后面,在进行除法运算时,调整指令放在除法指令之前。3.18 中断指令执行时,堆栈的内

32、容有什么变化?中断处理子程序的人口地址是怎样得到的?【答】中断指令执行时,堆栈内容变化如下:标志寄存器被推入堆栈,且SP减2,然后CPU将主程序的下一条指令地址即断点地址推入堆栈,即段值CS推入堆栈且SP减2,偏移量推入堆栈,且SP减2。中断处理子程序的入口地址即中断向量,对应的中断类型号的4倍即为中断向量地址,在该地址处的4个字节内容,高地址单元两个字节为中断入口地址的段地址,低地址单元两个字节为中断入口地址的偏移地址。3.19 中断返回指令IRET和普通子程序返回指令RET 在执行时,具体操作内容什么不同?【答】IRET从堆栈中依次弹出断点处指令指针IP、代码段CS内容与标志寄存器的值,而

33、RET从堆栈中依次弹出断点处指令指针IP值、代码段CS内容,不需要弹出标志寄存器的值。3.20 将存放在0A00H单元和0A02H单元的两个无符号数相乘,结果存放在地址为0A04H开始的单元中。 【答】参考程序:MOVAL,0A00HMOVBL,0A02HMULBLMOV0A04,AX3.21 编程序将AX中数,最高位保持不变,其余全部左移4位。【答】参考程序:MOVBX, AXANDBX , 8000HMOVCL, 4SHLAX, CLANDAX,7FFFHORAX, BX3.22 将0400H单元中的数,低4位置零,高4位保持不变。【答】参考程序:MOVAL, 0400HANDAL, 0F

34、0HMOV0400H, AL3.23 将BX中的数,对高位字节求反,低位字节保持不变。【答】参考程序:NOTBH 3.24 检测Bx中第13位(D13),为0时,把AL置0,为1时,把AL置1。【答】参考程序:TESTBX,0010 0000 0000 0000BJZZEROMOVAL,01HHLTZERO:MOVAL,0HLT3.25 利用字串操作指令,将1000H10FFH单元全部清零。【答】参考程序:CLDMOVDI,1000HMOVCX,100HMOVAL,0REPSTOSB3.26 从1000H开始,存放有200个字节,要查出字符#(ASCII码为23H), 把存放第一个#的单元地址

35、送入BX中。【答】参考程序:CLDMOV DI,1000HMOV CX,200MOV DX,CXMOV AL,23HREPNZ SCASBJZFINDJMP NOFOUNDFOUND:DEC DIMOV BX,DINOFOUND:HLT3.27 编程计算(X+Y)*10)+Z)/X,X、Y、Z都是16位无符号数,结果存在RESULT开始的单元。【答】参考程序:MOVAX,XADD AX,YMOVBX,0AHMUL BXADD AX,ZADC DX,0HMOV BX,XDIVBXMOV RESULT,AXMOVRESULT+2,DXHLT3.28 用简单指令编程求-3/2=?,将商存DL,余数存

36、DH单元。用TD调试后,写出DL,DH的内容。【答】参考程序:MOVAL,-3CBWMOVBL,2IDIV BLMOV DL,AL MOVDH,AHHLT习题四 汇编语言程序设计主要内容:汇编语言程序设计。主要介绍汇编语言程序的设计方法与编程原理,重点掌握算术运算程序、字符串处理程序、码制转换程序、子程序设计程序、常用DOS和BIOS功能调用程序、汇编语言常用伪指令。4.1 分析执行下列指令序列后的结果: 1)MOVAX,1234H MOVBX,00FFH ANDAX,BX【答】(AX)=0034H2)MOVAL,01010101B ANDAL,00011111B;(AL)=00010101B

37、 ORAL,11000000B;(AL)=11010101B XORAL,00001111B;(AL)=11011010B NOTAL【答】(AL)=00100101B3)MOVDL,05H MOVAX,0A00H MOVDS,AX MOVSI,0H MOVCX,0FH AGAIN:INCSI CMPSI,DL LOOPNEAGAIN HLT 本程序实现了什么功能?【答】在以0A001H开始的15个单元中查找05H。4)MOVAX,DSEGADDR MOVDS, AX MOVES,AX MOVSI, OFFSET B1ADDR MOVDI,OFFSET B2ADDR MOVCX,N CLD R

38、EPMOVSB HLT 本程序实现了什么功能?【答】 将B1ADDR中N个字节数据传送到B2ADDR开始的15个存储单元 。 5)MOVAX, 0H MOVDS,AX MOVES, AX MOVAL,05H MOVDI,0A000H MOVCX,0FH CLD AGAIN:SCASBLOOPNEAGAIN HLT本程序实现了什么功能?【答】从地址0A000H开始的15个单元中查找字节型数据05H,用条件循环LOOPNZ,控制数据05H的查找。4.2 阅读程序:1).CLD LEADI,0100H MOVCX, 0080H XORAX, AX REPSTOSW 本程序实现了什么功能?【答】将DS

39、中起始地址为0100H的128个字节单元清零。2).MOVAL, 08H SALAL,01H;(AL)=00010000H MOVBL, AL MOVCL ,02H SALAL,CL;(AL)=01000000H ADDAL,BL;(AL)=01010000H 本程序实现了什么功能? 【答】 将AL中的内容乘以10。4.3 试分析下列程序完成什么功能? MOVDX,3F08HMOVAH,0A2HMOVCL,4 SHLDX,CL;(DX)=F080H MOVBL,AHSHLBL,CL;(BL)=20H SHRBL,CL;(BL)=02H ORDL,BL;(DL)=82H 【答】将DX中的低4位数

40、据8H分离出来,将AH中的低4位数据2H分离出来,合并为82H存放在DL。4.4 已知程序段如下: MOVAX,1234H MOVCL,4 ROLAX,CLDECAXMOVCX,4MULCX 试问:(1)每条指令执行后,AX寄存器的内容是什么?(2)每条指令执行后,CF,SF及ZF的值分别是什么?(3)程序运行结束时,AX及DX寄存器的值为多少? 【答】MOVAX,1234H; (AX)=1234H, CF=SF=ZF=0 MOVCL,4 ROLAX,CL; (AX)=2341H ,CF=1,SF=ZF=0 DECAX; (AX)=2340H,CF=1,SF=ZF=0 MOVCX,4;MULC

41、X;(AX)= 8000H ,CF=ZF=0,SF=1,DX=04.5 试分析下列程序段: ADDAX,BX JNCL2 SUBAX,BX JNCL3 JMPSHORTL5 如果AX、BX的内容给定如下: AXBX (1)14C6H80DCH (程序转向 L2)(2)B568H54B7H (程序转向 SHORTL5 )问该程序在上述情况下执行后,程序转向何处? 【答】(1) 程序转向 L2。(2) 程序转向 SHORTL5。4.6 以下为某个数据段,试问各个变量分别占多少字节,该数据段共占多少字节? DATASEGMENT VAR1DW9 ;2字节VAR2DD10 DUP(?),2 ;44字节VAR3DB2 DUP(?,10 DUP(?) ;22字节VAR4DB HOW ARE YOU ;11字节DATA ENDS【答】该数据段共占79字节。4.7 下列语句在存储器中分别为变量分配多少字节空间?并画出存储空间的分配图。 VAR1DB10,2

展开阅读全文
部分上传会员的收益排行 01、路***(¥15400+),02、曲****(¥15300+),
03、wei****016(¥13200+),04、大***流(¥12600+),
05、Fis****915(¥4200+),06、h****i(¥4100+),
07、Q**(¥3400+),08、自******点(¥2400+),
09、h*****x(¥1400+),10、c****e(¥1100+),
11、be*****ha(¥800+),12、13********8(¥800+)。
相似文档                                   自信AI助手自信AI助手
搜索标签

当前位置:首页 > 百科休闲 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服