80X86汇编语言程序设计第二章⑤.80868088指令.

80X86汇编语言程序设计第二章⑤.80868088指令.
80X86汇编语言程序设计第二章⑤.80868088指令.

80X86汇编语言程序设计

第二章 8086/8088寻址方式和指令系统

(二加减运算指令

1. 加法指令 ADD

格式:ADD OPRD1,OPRD2

执行的操作:(OPRD1 ← (OPRD1 +(OPRD2

例如 :MOV AX,7896H ; (AX =7896H

即(AH =78H (AL =96H ; 各标志位保持不变

ADD AL,AH ;AL=AL+AH=96H+78H(=10EH=0EH 前面的 1给了进位标志CF 。

即(AH =78H (AX =780EH

CF=1PF=0AF=0ZF=0SF=0OF=0

例如 :ADD DX,0F0F0H

执行前(DX =4652H

执行后(DX =4652H+F0F0H(=13742H=3742H 前面的 1给了进位标志 CF 。ZF=0 SF=0 CF=1 OF=0

这里 4的二进制码是 0100, F 是 1111, 一个正数一个负数相加肯定 OF 是 0。

例如 :ADD AX,4321

执行前(AX =62A0H

执行后(AX =62A0+4321=A5C1H 这里要注意, A 的二进制数是 1010,最高有效位为 1, 所以 SF 为 1。

两个正数相加,结果为负的就溢出;两个负数相加,结果为正的就溢出。

SF=1 ZF=0 CF=0 OF=1

这里 6的二进制码是 0110,而 4的二进制码是 0100,两个正数相加,结果 A 为1010为负,所以 OF 为 1。

从上面例子可看出:加法指令影响标志位。

OF 位根据操作数的符号及其变化情况来设置:若两个操作数的符号相同而结果的符号与之相反时 OF=1,否则 OF=0。

CF 位可以用来表示无符号数的溢出。由于无符号数的最高有效位只有数值意义而无符号意义, 所以从该位产生的进位应该是结果的实际进位值,但在有限数的范围内就说明了结果。

2. 带进位加指令 ADC (Add with Carry

格式:ADC OPRD1,OPRD2

执行的操作:(OPRD1 ← (OPRD1 +(OPRD2 +(CF

例如 :下列指令序列执行两个双精度(32位的加法。设目的操作数放在 DX 和AX 寄存器中, 其中 DX 存放高位字,源操作数存放在 BX 、 CX 中,其中 BX 存放高位字。 (双精度的数高位和高位相加,低位和低位相加,首先加低位。

如指令执行前:(DX =0002H (AX =0F365H (BX =0005H (CX =0E024H指令序列为:ADD AX,CX

ADC DX,BX

执行第一条指令后:

(AX =AX+CX=F365+E024 =1D389 =D389H

SF=1 ZF=0 CF=1 OF=0

这里 F 的二进制是 1111, E 的二进制是 1110, 得出的 D 是 1101。所以 OF 为0。 (8以上全是负的, 8以下全是正的

执行第二条指令后:

(DX =DX+BX+CF=0002+0005+0001=0008H

SF=0 ZF=0 CF=0 OF=0

则该指令序列执行完后:(DX =0008H (AX =D389H

从上面的例子可以看出 :

为实现双精度加法, 必须用两条指令分别完成低位字和高位字的加法, 而且在高位字相加时, 应该使用 ADC 指令以便把前一条 ADD 指令作低位字加法所产生的进位值加入高位字之内。另外, 带符号的双精度数的溢出,应该根据 ADC 指令的OF 位来判断,而作低位加法用的 ADD 指令的溢出是无意义的。此指令影响标志位。

3. 加 1指令 INC (INCrement

格式:INC OPRD

这条指令完成对操作数 OPRD 加 1,然后把结果送回 OPRD ,即:

(OPRD ← (OPRD +1

操作数 OPRD 可以是通用寄存器,也可以是存储单元。这条指令执行的结果影响标志 ZF 、 SF 、 OF 、 PF 和 AF ,但它不影响 CF 。

该指令主要用于调整地址指针和计数器。

例如:写出把首地址为 BLOCK 的字数组的第 6个字送到 DX 寄存器的指令。

要求使用以下几种寻址方式:

(1寄存器间接寻址

MOV BX,OFFSET BLOCK ;首先把 BLOCK 里的偏移地址送给 BX ,这里也可以用 LEA BX,BLOCK

ADD BX,000AH

MOV DS,[BX]

(2寄存器相对寻址

LEA BX,BLOCK ; 也可以 MOV BX,OFFSET BLOCK

MOV DX,[BX]000AH]

4. 减法指令 SUB (SUBtraction

格式:SUB OPRD1,OPRD2

执行的操作:(OPRD1 ← (OPRD1 -(OPRD2

例如 :SUB [SI+14H],0136H

指令执行前(DS =3000H, (SI =0040H, (30054H =4336

物理地址 =DS+SI+14H=30000+0040+0014=30054H SUB (30054H =4336-0136=4200H指令执行后(30054H =4200H

SF=0 ZF=0 CF=0 OF=0

例如 :SUB DH,[BP+4]

指令执行前(DH =41H, (SS =0000H, (BP =00E4H, (000E8H =5AH

SS:BP=00000+00E4+4=000E8 =5AH

SIB DH-BP=41H-5AH=E7H

指令执行后(DH =0E7H

SF=1 ZF=0 CF=1 OF=0

此指令影响标志位 CF 位说明无符号数相减的溢出, 同时它又是被减数的最高有效位向高位的借位值。 OF 位则说明带符号数的溢出。减法的 OF 位的设置方法为:若两个数的符号相反,而结果的符号与减数相同则 OF=1。说明结果是错误的。

5. 带借位减指令 SBB (SuBtract with Borrow

格式:SBB OPRD1,OPRD2

执行的操作:(OPRD1 ← (OPRD1 -(OPRD2 -CF

例如 :SBB AL,DL

SBB DX,AX

该指令主要用于多字节数相减的场合。

6. 减 1指令 DEC (DECrement

格式:DEC OPRD

执行的操作:(OPRD ← (OPRD -1

例如 :DEC VARB ;VARB 是字节变量

操作数 OPRD 可以是通用寄存器,也可以是存储单元。在相减时,把操作数作为一个无符号数对待。这条指令执行的结果影响标志 ZF 、 SF 、 OF 、 PF 和 AF ,但不影响 CF 。

7. 取补指令 NEG (NEGate

格式:NEG OPRD

执行的操作:(OPRD ← 0-(OPRD

这条指令对操作数取补,就是用零减去操作数 OPRD ,再把结果送回 OPRD 。(各位取反末尾加 1操作数可以是通用寄存器,也可以是存储单元。

例如 :NEG AL

NEG VARW[SI] ; 有效地址就是 VARW 的位移加 SI 的值

如在字节操作时对 -128取补,或在字操作时对 -32768取补,则操作数不变,但 OF 被置 1。其它均为 0。此指令的执行结果影响 CF 、 ZF 、 SF 、 OF 、 AF 和 PF , 操作数为 0时,求补运算的结果使 CF=0,其它情况则均为 1。

8. 比较指令 CMP (CoMPare

格式:CMP OPRD1,OPRD2

这条指令完成操作数 OPRD1减去操作数 OPRD2, 运算结果不送到 OPRD1。但影响标志 CF 、 ZF 、 SF 、 OF 、 AF 和 PF 。

例如 :CMP SI,DI

CMP CL,5

CMP DX,[BP-4]

比较指令主要用于比较两个数的关系,是否相等,谁大谁小。执行了比较指令后,可根据 ZF 是否置位,判断两者是否相等;如果两者是无符号数,则可根据 CF 判断大小;如果两者是有符号

数,则要根据 SF 和 OF 判断大小。

例如:设 X,Y ,Z 均为双精度数,它们分别存放在地址为 X,X+2,Y,Y+2,Z,Z+2的存储单元中,存放时高位字在高地址中,低位字在低地址中。下列指令序列实现W ← X+Y+24-Z并用 W 和 W+2单元存放运算结果。

MOV AX,X

MOV DX,X+2

ADD AX,Y

ADC DX,Y+2

ADD AX,24

ADC DX,0

SUB AX,Z

SBB DX,Z+2

MOV W,AX

MOV W+2,DX

例如:设当前数据段寄存器的内容为 1B00H ,在数据段的偏移地址 2000H 单元内,含有一个内容为 0FF10H 和 8000H 的指针,它们是一个 16位变量的便宜地址和段地址,试写出把该变量装入 AX 的指令序列。

MOV BX,[2000H]

MOV ES,[2002H]

MOV AX,ES:[BX]

例如:写出执行以下计算的指令序列,其中 X,W,Z 均为存放 16位带符号数单元的地址。

Z ← W+(Z-X

一法:MOV AX,Z

MOV BX,X

SUB AX,BX

MOV BX,W

ADD AX,BX

MOV Z,AX

二法:MOV AX,Z

SUB AX,X

ADD AX,W

MOV Z,AX

遇到双精度数用 AX 存放低字,用 DX 存放高字。先进行低字的加减法,再进行高字的加减法 , 因为在高位还要算入带进位的加减法。

例如 :写出对存放在 DX 和 AX 中的双字长数求补的指令序列

答案 :NEG DX

NEG AX

SBB DX,0

如果是双字数进行求补,首先对高位(DX 进行求补,然后再对低位(AX 求补、求补:用 0减或者各位取反末尾加一。

一 . 指出下列指令的错误:

MOV AH,BX AH 是 8位寄存器, BX 是 16位寄存器; (寄存器寻址

MOV AX,[SI][DI] SI 时源变址寄存器, DI 是目的变址寄存器,两个都是变址寄存器,应该有一个是基址; (基址加变址寻址

CMP 15,BX 目的操作数不能是立即数;

PUSH BL 压栈都是以字为单位;

POP CS 出栈不能是 CS , CS 不能做目的操作数;

MOV [BX],[SI] 转移指令俩不能都是存储单元;

MOV CS,AX 代码段 CS 不能做目的操作数;

CMP OP1,OP2 (OP1,OP2是已定义的字节变量不能同时比较两个字节单元;

CMP AX,OP1 (OP1是已定义的字节变量 AX 是字而 OP1是字节,类型不匹配。

(1分辨是单操作数还是双操作数;

(2如果是双操作数,那么它是根据什么寻址方式;

(3双操作数的目的操作数不能是立即数;

(4两个操作数中必须有一个是寄存器(除了立即寻以外 ;

(5双操作数中,代码段 CS 不能做目的操作数;

(6最后检查两个操作数的类型是否匹配;

(如果是单操作数,栈操作都是以字为单位(16位寄存器和 16位地址 ;

(单操作数中,代码段 CS 不能做目的操作数;

二 . 完成对字单元 BUF 的内容加 1运算,下面错误的指令是?

A.MOV BX,BUF ;直接寻址,把 BUF 的内容送给 BX INC BX

MOV BUF,BX

B.MOV BX,OFFSET BUF ;把 BUF 的偏移地址给了 BX

INC WORD PTR[BX] ;将 BX 中地址字单元的内容加 1

C.MOV BX,BUF ;直接寻址,把 BUF 的内容送给 BX INC WORD PTR[BX] ;将BX 中地址字单元的内容加 1

D.MOV BX,0 ;将 BX 清零

INC WORD PTR BUF[BX]

BUF 是一个符号地址。

第三章指令系统

第5章指令系统 一、判断题 (×)1.执行指令时,指令在内存中的地址存放在指令寄存器中。 (√)2.程序计数器PC用来指示从内存中取指令。 (√)3.同一系列的不同型号的计算机,保持软件向上兼容的特点。 (√)4.在计算机的指令系统中,真正必须的指令数是不多的,其余的指令都是为了提高机器速度和便于编程而引入的。 (×)5.RISC的主要目标是减少指令数,因此允许以增加每条指令的功能的办法来减少指令系统所包含的指令数。 二、选择题 1.在计算机的指令系统中采用不同的寻址方式的主要目的是 C 。 A.实现程序控制和快速查找存储器地址 B.可以直接访问主存和外存 C.缩短指令长度,扩大寻址空间,提高编程的灵活性 D.降低指令的译码难度 2.单操作数指令的操作数由 B 提供。 A.指定寄存器或由操作码指定存储单元 B.由地址码指定的存储单元;如果已标明该存储单元的内容为地址,则由该地址所指定的存储单元 C.由操作码直接指定数据 D.由操作码直接指定的存储单元 3.在多地址指令中,算术运算结果不会存储在 A 中。 A.累加器B.第一地址码所指定的存储空间 C.第二地址码所指定的存储空间D.第三地址码所指定的存储空间 4.把存储单元A的内容传送到存储单元B的指令执行后,存储单元A的内容为 B 。A.空白或零,视机器而定B.与存储单元B的内容相同 C.二进制补码D.存储单元A的内容与存储单元B的内容之差 三、填空题 1.指令操作码通常有两种编码格式:固定格式和可变格式。 2.在当前的计算机中,指令的执行方式有3种,就是顺序执行方式,重叠执行方式和流水线方式。 3.数据传送类指令实现的功能是传送数据,它往往是在主存储器和寄存器之间,或寄存器和寄存器之间传送数据。 4.所谓堆栈,是主存中专门用来存放数据的一个特定的区域,它具有先进后出的性质。 5.Intel 8086/8088的字符串操作指令用来处理存放在存储器中的一串字符或数据。6.内存地址寄存器用来指示从内存中取数据。 7.浮点运算指令对于用于科学计算的计算机是很必要的,可以提高机器的运算速度。四、名词解释 1.计算机指令系统:是指一台计算机上全部指令的集合,也称为计算机的指令集。 2.固定格式:操作码的长度是固定的,集中放在指令字的某一个字段中。 3.可变格式:操作码的长度可变,且分散地放在指令字的不同字段中。 4.寻址:就是寻找操作数的地址,最终目的是寻找所需的操作数。 五、简答题

汇编语言知识大全

第一章基础知识: 一.机器码:1.计算机只认识0,1两种状态。而机器码只能由0,1组成。故机器码相当难认,故产生了汇编语言。 2.其中汇编由三类指令形成:汇编指令(有机器码对应),伪指令,其他符号(编译的时候有用)。 每一总CPU都有自己的指令集;注意学习的侧重点。 二.存储器:1.存储单元中数据和指令没任何差别。 2.存储单元:Eg:128个储存单元(0~127)128byte。 线: 1.地址总线:寻址用,参数(宽度)为N根,则可以寻到2^N个内存单元。 据总线:传送数据用,参数为N根,一次可以传送N/8个存储单元。 3.控制总线:cpu对元器件的控制能力。越多控制力越强。 四.内存地址空间:1.由地址总线决定大小。 2.主板:cpu和核心器件(或接口卡)用地址总线,数据总线,控制总 线连接起来。 3.接口卡:由于cpu不能直接控制外设,需通过接口卡间接控制。

4.各类存储器芯片:RAM,BIOS(主板,各芯片)的ROM,接卡槽的 RAM CPU在操控他们的时候,把他们都当作内存来对待,把他们总的看作一个由 若干个存储单元组成的逻辑存储器,即我们所说的内存地址空间。 自己的一点理解:CPU对内存的操作是一样的,但是在cpu,内存,芯片之间的硬件本身所牵扯的线是不同的。所以一些地址的功能是对应一些芯片的。 第二章寄存器 引入:CPU中含有运算器,寄存器,控制器(由内部总线连接)。而寄存器是可以用来指令读写的部件。8086有14个寄存器(都是16位,2个存储空间)。 一.通用寄存器(ax,bx,cx,dx),16位,可以分为高低位 注意1.范围:16位的2^16-1,8位的2^8-1 2.进行数据传送或运算时要注意位数对应,否则会报错 二.字:1. 1个字==2个字节。 2. 在寄存器中的存储:0x高位字节低位字节;单元认定的是低单元 数制,16进制h,2进制b

(完整word版)汇编语言常用指令大全,推荐文档

MOV指令为双操作数指令,两个操作数中必须有一个是寄存器. MOV DST , SRC // Byte / Word 执行操作: dst = src 1.目的数可以是通用寄存器, 存储单元和段寄存器(但不允许用CS段寄存器). 2.立即数不能直接送段寄存器 3.不允许在两个存储单元直接传送数据 4.不允许在两个段寄存器间直接传送信息 PUSH入栈指令及POP出栈指令: 堆栈操作是以“后进先出”的方式进行数据操作. PUSH SRC //Word 入栈的操作数除不允许用立即数外,可以为通用寄存器,段寄存器(全部)和存储器. 入栈时高位字节先入栈,低位字节后入栈. POP DST //Word 出栈操作数除不允许用立即数和CS段寄存器外, 可以为通用寄存器,段寄存器和存储器. 执行POP SS指令后,堆栈区在存储区的位置要改变. 执行POP SP 指令后,栈顶的位置要改变. XCHG(eXCHanG)交换指令: 将两操作数值交换. XCHG OPR1, OPR2 //Byte/Word 执行操作: Tmp=OPR1 OPR1=OPR2 OPR2=Tmp 1.必须有一个操作数是在寄存器中 2.不能与段寄存器交换数据 3.存储器与存储器之间不能交换数据. XLAT(TRANSLATE)换码指令: 把一种代码转换为另一种代码. XLAT (OPR 可选) //Byte 执行操作: AL=(BX+AL) 指令执行时只使用预先已存入BX中的表格首地址,执行后,AL中内容则是所要转换的代码. LEA(Load Effective Address) 有效地址传送寄存器指令 LEA REG , SRC //指令把源操作数SRC的有效地址送到指定的寄存器中. 执行操作: REG = EAsrc 注: SRC只能是各种寻址方式的存储器操作数,REG只能是16位寄存器 MOV BX , OFFSET OPER_ONE 等价于LEA BX , OPER_ONE MOV SP , [BX] //将BX间接寻址的相继的二个存储单元的内容送入SP中 LEA SP , [BX] //将BX的内容作为存储器有效地址送入SP中 LDS(Load DS with pointer)指针送寄存器和DS指令 LDS REG , SRC //常指定SI寄存器。 执行操作: REG=(SRC), DS=(SRC+2) //将SRC指出的前二个存储单元的内容送入指令中指定的寄存器中,后二个存储单元送入DS段寄存器中。

第二章 计算机系统

第二章计算机系统 一、选择题 1. 在微型计算机的性能指标中,用户可用的内存容量通常是指_____。 A. ROM的容量 B. RAM的容量 C. CD-ROM的容量 D. RAM和ROM的容量之和 2. 计算机软件系统的组成是_____。 A. 系统软件与网络软件 B. 应用软件与网络软件 C. 系统软件与应用软件 D. 操作系统与应用软件 3. 通常计算机系统是指_____。 A. 硬件和软件 B. 系统软件和应用软件 C. 硬件系统和软件系统 D. 软件系统 4. 微机系统中存取容量最大的部件是_____。 A. 硬盘 B.主存储器 C.高速缓存 D.软盘 5. 在微机中,_____是输出设备。 A. 键盘 B. 鼠标 C. 光笔 D. 绘图仪 6. _____ 不属于微机总线。 A. 地址总线 B. 通信总线 C. 数据总线 D. 控制总线 7. CPU的中文含义是_____。 A. 主机 B. 中央处理单元 C. 运算器 D. 控制器 8. 中央处理器(简称CPU)不包含_____ 部分。 A. 控制单元 B. 寄存器 C. 运算逻辑单元 D. 输出单元 9. _____ 是内存储器中的一部分,CPU对它们只能读取不能存储内容。 A.RAM B.随机存储器 C.ROM D.键盘 10. 在一般情况下,外存中存放的数据,在断电后_____丢失。 A. 不会 B. 少量 C. 完全 D. 多数 11. 电子计算机的算术/逻辑单元、控制单元合称为_____。 A.CPU B.外设 C.主机 D.辅助存储器 12. 微型计算机的字长取决于_____。 A.地址总线 B.控制总线 C.通信总线 D.数据总线 13. 运算器的主要功能是进行_____ 运算。 A.逻辑 B.算术与逻辑 C.算术 D.数值 14. 下列哪个只能当作输入设备? A. 终端 B. 打印机 C. 读卡机 D. 磁带 15. 计算机向使用者传递计算处理结果的设备称为_____。 A.输入设备 B.输出设备 C.存储器 D.微处理器 16.数据一旦存入后,非经特别处理,不能改变其内容,所存储的数据只能读取,但无 法将新数据写入, 所以叫做_____。 A. 磁芯 B. 只读存储器 C. 硬盘 D. 随机存取内存 17. _____ 设备分别属于输入设备、输出设备和存储设备。 A.CRT、CPU、ROM B.磁盘、鼠标、键盘 C.鼠标器、绘图仪、光盘 D.磁带、打印机、激光打印机 18. 在以下所列设备中,属于计算机输入设备的是_____。 A.键盘 B.打印机 C.显示器 D.绘图仪 19. 存储容量常用KB表示,4KB表示存储单元有_____。 A. 4000个字 B. 4000个字节 C. 4096个字 D. 4096个字节 20. 在微型计算机中访问速度最快的是_____。 A. 磁盘 B. 软盘 C. RAM D. 打印机 21. 在表示存储器的容量时,M的准确含义是_____。 A. 1米 B. 1024K C. 1024字节 D. 1024 22. 从软盘上把数据传送到计算机,称为_____。 A. 打印 B. 读盘 C. 写盘 D. 输出 23. 可从_____ 中随意读出或写入数据。

汇编语言指令汇总

汇编语言程序设计资料简汇 通用寄存器 8位通用寄存器8个:AL、AH、BL、BH、CL、CH、DL、DH。 16位通用寄存器8个:AX、BX、CX、DX、SI、DI、BP、SP。 AL与AH、BL与BH、CL与CH、DL与DH分别对应于AX、BX、CX和DX的低8位与高8位。专用寄存器 指令指针:IP(16位)。 标志寄存器:没有助记符(FLAGS 16位)。 段寄存器 段寄存器:CS、DS、ES、SS。 内存分段:80x86采用分段内存管理机制,主要包括下列几种类型的段: ?代码段:用来存放程序的指令序列。 ?数据段:用来存放程序的数据。 ?堆栈段:作为堆栈使用的内存区域,用来存放过程返回地址、过程参数等。 物理地址与逻辑地址 ?物理地址:内存单元的实际地址,也就是出现在地址总线上的地址。 ?逻辑地址:或称分段地址。 ?段地址与偏移地址都是16位。 ?系统采用下列方法将逻辑地址自动转换为20位的物理地址: 物理地址= 段地址×16 + 偏移地址 ?每个内存单元具有唯一的物理地址,但可由不同的逻辑地址描述。 与数据有关的寻址方式 立即寻址方式 立即寻址方式所提供的操作数紧跟在操作码的后面,与操作码一起放在指令代码段中。立即数可以是8位数或16位数。如果是16位数,则低位字节存放在低地址中,高位字节存放在高地址中。 例:MOV AL,18 指令执行后,(AL)= 12H 寄存器寻址方式 在寄存器寻址方式中,操作数包含于CPU的内部寄存器之中。这种寻址方式大都用于寄存器之间的数据传输。 例3:MOV AX,BX 如指令执行前(AX)= 6789H,(BX)= 0000H;则指令执行后,(AX)= 0000H,(BX)保持不变。 直接寻址方式 直接寻址方式是操作数地址的16位偏移量直接包含在指令中,和指令操作码一起放在代码段,而操作数则在数据段中。操作数的地址是数据段寄存器DS中的内容左移4位后,加上指令给定的16位地址偏移量。直接寻址方式适合于处理单个数据变量。 寄存器间接寻址方式 在寄存器间接寻址方式中,操作数在存储器中。操作数的有效地址由变址寄存器SI、DI或基址寄存器BX、BP提供。 如果指令中指定的寄存器是BX、SI、DI,则用DS寄存器的内容作为段地址。 如指令中用BP寄存器,则操作数的段地址在SS中,即堆栈段。

大学计算机第二章练习题

1[单选题] 下列的不属于计算环境的发展经历的主要历史阶段。 1分 ?A集中计算 ?B互联网 ?C云计算 ?D服务器 2[单选题] 一个完整的计算机系统由组成。 1分 ?A硬件系统和软件系统 ?B主机和外设 ?C系统软件和应用软件 ?D主机、显示器和键盘 3[单选题] 时至今日,计算机仍采用程序内存或称存储程序原理,原理的提出者是。1分 ?A莫尔 ?B冯·诺依曼 ?C比尔·盖茨 ?D图灵 4[单选题]

运算器的主要功能是进行。 1分 ?A代数和逻辑运算 ?B代数和四则运算 ?C算术和逻辑运算 ?D算术和代数运算 5[单选题] 的功能是控制、指挥和协调计算机各部件工作。 1分 ?A鼠标 ?B运算器 ?C控制器 ?D存储器 6[单选题] 计算机的硬件主要包括存储器、中央处理器(CPU)、输入设备和。1分 ?A控制器 ?B输出设备 ?C键盘 ?D显示器 7[单选题] 下面的设备属于输出设备。 1分

?A键盘 ?B鼠标 ?C扫描仪 ?D打印机 8[单选题] 微型计算机硬件系统中最核心的部件是。1分 ?A存储器 ?B输入输出设备 ?C显示器 ?D CPU 9[单选题] 下列设备中,完全属于外部设备的一组是。1分 ?A光驱、内存、显示器、打印机 ?B扫描仪、CPU、硬盘、内存 ?C光驱、鼠标、扫描仪、显示器 ?D显示器、键盘、运算器、移动硬盘 10[单选题] 财务管理软件是一种专用程序,它属于。1分 ?A接口软件

?B系统软件 ?C应用软件 ?D支援软件 11[单选题] 中央处理器可以直接存取中的信息。 1分 ?A硬盘 ?B光盘 ?C U盘 ?D主存 12[单选题] 计算机硬件系统的主要组成部件有五大部分,下列各项中不属于这五大部分的是。 1分 ?A运算器 ?B软件 ?C I/O设备 ?D控制器 13[单选题] 以下不属于计算机外设的是。 1分 ?A输出设备 ?B输入设备

第二章习题答案复习过程

第二章习题答案

第二章主机习题答案 一、名词解释 1.中央处理器:又叫做CPU,它是微型计算机的核心部件,它反映了不同时代微型计算 机的档次和基本性能 2.主频:CPU的时钟频率称为主频, 主频越高, 则计算机工作速度越快。 3.外频:系统的前端总线频率(FSB)也就是所谓的外频,是由主板为CPU提供的基准 的时钟频率。 4.倍频:倍频即主频与外频之比。 5.BIOS:即计算机的基本输入输出系统(Basic Input-Output S ystem),是集成在主板上的 一个ROM芯片,其中保存有计算机重要的基本输入/输出程序、系统信息设置、开机通电自检程序和系统启动自检程序。 6.CMOS:本意是指互补金属氧化物半导体,一种大规模应用于集成电路芯片制造的原 料。在计算机中是指微机主板上的一块可擦写的RAM芯片,用来保存当前系统的硬件配置和用户对某些参数的设定。 7.只读存储器:它是一种存储芯片,其中的内容一经写入就不能修改,并且在主机关掉 后内容也不会消失。 8.随机存储器:它是一种可以通过在紫外线的照射或者使用电来擦除其中内容的特殊的 PROM芯片。其中的内容被擦除后,可以重新写入新内容。 9.SDRAM:SDRAM是同步动态存储器的缩写,其时钟频率与CPU前端总线的系统时钟 频率相同,利用一个单一的系统时钟同步所有的地址数据和控制信号。使用SDRAM 不但能提高系统表现,还能简化设计、提供高速的数据传输。在功能上,它类似常规的DRAM,且也需时钟进行刷新。可以说,SDRAM是一种改善了结构的增强型DRAM。目前的SDRAM有10ns和8ns两种参数类型。 10.DDR SDRAM:DDR SDRAM是双速同步动态存储器,是内存的一种,它支持数据在 每个时钟周期的两个边沿进行数据传输,从而使内存芯片的数据吞吐率提高了一倍。 DDR-SDRAM还降低了能耗,是目前主流的内存。 二、填空题 1.CPU的主频与外频的关系:主频是cpu的频率,外聘是主板的频率。 2.CPU的发展经历了X86 、奔腾PRO 、 PII 、 PIII 和 PIIII时代。 3.主板(Mainboard)又称为系统板或母板,是计算机系统中最大的一块电路板,是主机 的大脑,主要负责主机内各个部件的通信和调度,是计算机的重要组成部分。 4.主板CPU插座分为两大类,它们是socket插槽和 slot插槽。 5.内存插槽就是插放内存的地方。内存插槽分为:168针的SIMM 和184针的DIMM 两 大类。 6.存储器,一般分为内存和外存。通常内存是指 cpu可以访问的存储器,也称为主存 储器。 7.外存也称为主板外存储器,通常指硬盘、光驱、软驱、 u 盘等,特点是提供的存 储空间较大,但存储速度较慢。 8.按存储中的内容是否可变,将内存分为只读存储器与可擦写存储器。 仅供学习与交流,如有侵权请联系网站删除谢谢2

第三章 MCS-51指令系统习题答案

第三章 MCS -51指令系统 5 题 分析下面程序段的执行功能。 CLR A MOV R2, A MOV R7, #4 LOOP: CLR C MOV A, R0 RLC A MOV R0, A MOV A, R1 RLC A MOV R1, A MOV A, R2 RLC A MOV R2, A DJNZ R7, LO OP SJMP $ 答:将R2:R1:R0所表示的24位二进制数左移4位。(相当×16) 6 题 设系统晶振为12MHZ ,阅读下列程序,分析其功能。 START : SETB P1.0 NEXT: MOV 30H, #10 LOOP2: MOV 31H, #0FAH LOOP1: NOP NOP DJNZ 31H, LOOP1 DJNZ 30H, LOOP2 CPL P1.0 AJMP NEXT SJMP $ 答:((2+1+1)*250+2+2)*10+2=10.042(ms) 在P1.0引脚上输出周期为20ms 的方波。 7 题 阅读下列程序,分析其功能。 MOV R7, #10 MOV A, #30H MOV DPTR, #2000H LOOP : MOVX @DPTR, A INC A INC DPL DJNZ R7, LOOP SJMP $ R2 R1 R0 0 0 0 0

答:在外部数据存储器中的以下地址内存放数据: (2000H)=30H (2001H)=31H (2002H)=32H ┇┇ (2009H)=39H 8 题简述下列程序段完成的功能,程序完成后SP指针应指向哪里? MOV SP, #2FH MOV DPTR, #2000H MOV R7, #50H NEXT: MOVX A, @DPTR PUSH A INC DPL DJNZ R7, NEXT SJMP $ 答:以内部存储器地址30H作为栈底,从30H开始一直到7FH依次存放外部数据存储器中2000H一直到204FH地址中的数据。7FH作为栈顶。程序完成后SP=7FH。 9 题分析下列程序段执行结果,程序执行完后,SP指向哪里? MOV SP, #3FH MOV R0, #40H MOV R7, #10H NEXT: POP A MOV @R0, A DEC R0 DJNZ R7, NEXT SJMP $ 答:将栈中3FH,3EH一直到30H地址中的内容依次放入40H,3FH,…,31H单元中。执行完后SP=2FH。 10 题分析下列程序段执行结果。 XCH A, 30H MOV B, A ANL A, #0FH MOV 33H, A MOV A, B SW AP A ANL A, #15 MOV 34H, A SJMP $ 答:将30H单元中的数的高四位放入34H中,低四位放入33H中。

80X86指令系统填空题

填空题一览表 课程名称:微机原理及应用 ************************************************************ 章节名称:第三章80X86指令系统 ************************************************************ 知识点名称:指令的基本格式 ************************************************************ 试题1: 指令由_______字段和_______字段组成。 答案:操作码,操作数 试题2: 以下指令中,设执行前:DS=3000H,BX=0600H,SI=00B0H,ES=2000H,SS=1000H,CS=3500H,BP=0050H。 (1)执行指令MOV AX,BX后,AX=_______H,BX=_______H,该指令的源操作数是_______寻址方式。 (2)执行指令ADD AX,[BX][SI],其源操作数物理为_______H,源操作数是_______寻址方式。答案:(1)0600、0600、寄存器(2)306B0、基址加变址 ************************************************************ 知识点名称:8086/8088指令系统 ************************************************************ 试题3: 8086指令系统中算术运算指令主要包括_______、减法指令、_______、_______和压缩BCD码调整指令。 答案:加法指令,乘法指令,除法指令 试题4: 无符号数乘法使用_______指令;带符号数除法使用_______指令。 答案:MUL,IDIV 试题5: 随机存储器RAM主要包括________和________两大类。

第二章微处理器和指令系统习题选解

2.9如果GDT寄存器值为0013000000FFH,装人LDTR的选择符为0040H,试问装人描述符高速缓存的LDT描述符的起始地址是多少? 解:GDT寄存器的高32位和低16位分别为GDT的基址和段限,所以:GDT的基址=00130000H LDTR选择符的高13位D15~D3=000000001000B是该LDT描述符在GDT中的序号,所以: LDT描述符的起始地址= GDT的基址 十LDT描述符相对于GDT基址的偏移值 =00130000H+8×8=00130040H 2.10假定80486工作在实模式下,(DS)=1000H, (SS)=2000H, ( SI ) = El07FH, ( BX )=0040H, (BP) = 0016H,变量TABLE的偏移地址为0100H。请间下列指令的源操作数字段是什么寻址方式?它的有效地址(EA)和物理地址(PA)分别是多少? (1)MOV AX,[1234H ] (2) MOV AX, TABLE (3) MOV AX,[BX+100H] (4) MOV AX,TABLE[BPI[SI] 解:(1)直接寻址,EA=1234H , PA =(DS)×16+EA=11234H。 (2)直接寻址,EA= O100H,PA= (DS)×16+EA=10100H。 (3)基址寻址,EA=( EBX)+100H =0140H,PA= (DS) × 16+EA=10140H。 (4)带位移的荃址加变址寻址。(EA)= (BP)+[SI]十TABLE的偏移地址=0195H PA=(SS)×16+EA=20195H} 2.11下列指令的源操作数字段是什么寻址方式? (1)MOV EAX , EBX (2)MOV EAX,[ ECX] [EBX ] (3) MOV EAX,[ESI][EDX * 2] (4)MOV EAx,[ ESI*8] 解:(1)寄存器寻址。 (2)基址加变址寻址。 (3)基址加比例变址寻址。 (4)比例变址寻址。 2.12分别指出下列指令中源操作和目的操作数的寻址方式。 式表示出EA和PA。 (1)MOV SI,2100H (2)MOV CX, DISP[BX] (3) MOV [SI] ,AX (4)ADC AX,[BX][SI] (5)AND AX,DX (6) MOV AX,[BX+10H] (7) MOV AX,ES:[BX] (8) MOV Ax, [BX+SI+20H] (9) MOV [BP ].CX (10) PUSH DS 解:(1) 源操作数是立即数寻址;目的操作数是寄存器寻址。 (2)源操作数是基址寻址,EA=(BX)+DISP,PA=(DS)×16+(BX)+DISP 目的操作数是寄存器寻址。 (3)源操作数是寄存器寻址; 目的操作数是寄存器间接寻址,EA=(SI).PA=(DS) × 16十(SI)。 (4)操作数是基址加变址寻址,EA= (BX)+(SI).PA= (DS) × 16十(BX)+(SI) 目的操作数是寄存器寻址。 (5)源操作数和目的操作数均为寄存器寻址。 (6)源操作数是基址寻址,EA=(BX)+10H.PA= (DS) × 16十(BX)+10H 目的操作数是寄存器寻址。 (7)源操作数是寄存器间接寻.EA= (Bx).PA= (ES) × 16+(BX)

第二章 微处理器

第二章微处理器 一、教学内容: 1.概述 2.8088/8086微处理器 3.80286微处理器 4.80X86/Pentium微处理器 二、要求熟练掌握8086微处理器的组成原理、各功能部件的作用。 三、重点掌握16位微处理器的体系结构、各种寄存器的用途。 四、难点在于对整个CPU的各功能部件的结构组成、工作原理、概念的论述等方面的理解。 五、本章分为4讲,每讲2学时。 第一讲8088/8086微处理器 尽管微处理器已进入了Pentium时代,其内部结构和性能也发生了巨大的变化,但其基本结构仍然和早期的8086/8088 相似,可以说8086/8088 是80X86系列芯片的基础。 1.8086/8088 微处理器的内部结构 8086/8088 是Intel系列的16位微处理器,它是采用HMOS工艺制造的,内部包含约29000个晶体管,用单一的+5V电源,时钟频率为 5MHz~10MHz。 8086有16根数据线和20根地址线,其寻址空间达1M字节;8088是一种准16位微处理器,它的内部寄存器、内部运算部件以及内部操作都是按16位设计的,但对外的数据总线只有8条。8086/8088 芯片内设有硬件乘除指令部件和串处理指令部件,可对位、字节、字串、BCD码等多种数据类型进行处理。 1)总线接口单元BIU和执行单元EU

①总线接口单元BIU ?BIU的功能是8086 CPU与存储器或I/O设备之间的接口部件,负责全部引脚的操作。具体来说,BIU负责产生指令地址,根据指令地址从存储器取出指令,送到指令队列中排队或直接送给EU去执行。 ?BIU也负责从存储器的指定单元或外设端口中取出指令规定的操作数传送给EU,或者把EU的操作结果传送到指定的存储单元或外设端口中。 ?BIU内部设有4个16位的段寄存器:代码段寄存器CS (Code Segment)、数据段寄存器DS (Data Segment)、堆栈段寄存器SS (Stake Segment)、附加段寄存器ES (Extra Segment)。 ?一个16位的指令指针寄存器IP (Instruction Pointer) ?6字节指令队列缓冲器。 ?20位地址加法器和总线控制电路。 ②执行单元EU ?执行单元EU的功能是从BIU的指令队列中取出指令代码,然后执行指令所规定的全部功能。 ?在执行指令的过程中,如果需要向存储器或I/O传送数据,则EU向BIU 发出访问存储器或I/O的命令,并提供访问的地址和数据。 ?16的算术逻辑单元ALU (Arithmetic and Logic Unit) ?16位的状态标志寄存器F (Flags)

(完整版)第三章指令系统

第三章指令系统习题参考答案(三) 1、80C51系列单片机的指令系统有何特点? 答:80c51的指令系统的特点有:(1)执行时间短。一个机器周期指令有64条,2个时间周期指令有45条,而4个机器周期指令仅有2条(即乘法和除法指令);(2)指令编码字节少。单字节的指令有49条,双字节的指令有45条,三字节的指令仅有17条;(3)位操作指令丰富。这是80c51单片机面向控制特点的重要保证。 2、80C51单片机有哪几种寻址方式?各寻址方式所对应的寄存器或存储器 空间如何? 答:(1)寄存器寻址。 对应的寄存器有: ·工作寄存器R0~R7 ·累加器A ·寄存器B ·数据指针DPTR (2)直接寻址。 对应的存储空间有: ·片内RAM低128字节(以地址形式表示) ·SFR(以地址形式或SFR符号形式表示,但符号将转换为相应的SFR 地址) (3)寄存器间接寻址。 对应的空间有: ·片内RAM(采用@R0,@R1或SP); ·片外RAM(采用@R0,@R1或@DPTR) (4)变址寻址。 对应的空间有: ·ROM空间(采用@A+DPTR,@A+PC) (5)相对寻址。 ·ROM空间(采用JC rel) (6)位寻址。 ·片内RAM的20H~2FH单元的128可寻址位 ·SFR的可寻址位 3、访问特殊功寄存器SFR可以采用哪些寻址方式? 答:直接寻址、位寻址 4、访问内部RAM单元可以采用哪些寻址方式? 答:寄存器寻址、直接寻址、寄存器间接寻址 5、访问外部RAM单元可以采用哪些寻址方式? 答:寄存器间接寻址 6、访问外部程序存储器可以采用哪些寻址方式? 答:立即寻址、变址寻址、相对寻址 7、为什么说布尔处理功能是80C51单片机的重要特点? 答:布尔处理功能是MCS-51系列单片机的一个重要特征,在物理结构

汇编语言指令集合 吐血整理

8086/8088指令系统记忆表 数据寄存器分为: AH&AL=AX(accumulator):累加寄存器,常用于运算;在乘除等指令中指定用来存放操作数,另外,所有的I/O指令都使用这一寄存器与外界设备传送数据. BH&BL=BX(base):基址寄存器,常用于地址索引; CH&CL=CX(count):计数寄存器,常用于计数;常用于保存计算值,如在移位指令,循环(loop)和串处理指令中用作隐含的计数器. DH&DL=DX(data):数据寄存器,常用于数据传递。他们的特点是,这4个16位的寄存器可以分为高8位:AH,BH,CH,DH.以及低八位:AL,BL,CL,DL。这2组8位寄存器可以分别寻址,并单独使用。 另一组是指针寄存器和变址寄存器,包括: SP(Stack Pointer):堆栈指针,与SS配合使用,可指向目前的堆栈位置; BP(Base Pointer):基址指针寄存器,可用作SS的一个相对基址位置; SI(Source Index):源变址寄存器可用来存放相对于DS段之源变址指针; DI(Destination Index):目的变址寄存器,可用来存放相对于ES段之目的变址指针。 指令指针IP(Instruction Pointer) 标志寄存器FR(Flag Register) OF(overflow flag) DF(direction flag) CF(carrier flag) PF(parity flag) AF(auxiliary flag) ZF(zero flag) SF(sign flag) IF(interrupt flag) TF(trap flag) 段寄存器(Segment Register) 为了运用所有的内存空间,8086设定了四个段寄存器,专门用来保存段地址: CS(Code Segment):代码段寄存器; DS(Data Segment):数据段寄存器; SS(Stack Segment):堆栈段寄存器;

第三章 80868088的指令系统

3.1 指令的基本格式   一、指令构成 微计算机的指令系统通常由几十种或百余种指令组成(可见表2-1)。每种指令又由两个字段(Field)构成: l.操作码(OP-Code)字段 该字段指示计算机所要执行的操作类型,由一组二进制代码表示,在汇编语言中又用助记将(Mnemonic)代表。8086执行指令时,首先将操作码从指令队列取入执行部件EU中的控制单元,经指令译码器识别后,产生执行本指令操作所需的时序性控制信号,控制计算机完成规定的操作。 2.操作数(Oprand)字段 该字段则是指出指令执行的操作所需的操作数。在操作数字段中,可以是操作数本身,或是操作数地址或是操作数地址的计算方法。微计算机中此字段通常可有一个或两个,称前者为单操作数指令,称后者为双操作数指令。而双操作数又分别称为源操作数src (source)和目的操作数dst(destination)。在指令执行之前,src和dst均为参加运算处理的两个操作数,指令执行之后,在dst中则存放运算处理的结果。 指令的基本格式如下:   二、8086   8086的指令长度可在1~6字节的范围,如图3-1所示。其中B l和B0为基本字节,B3~B6将根据不同指令作相应的安排。   (1)B1字节各字段定义如下: OP--指令操作码。 D--表示方向。D=1寄存器为目的,D=0寄存器为源。 W--表示字节或字处理方式。W=0为字节指令,W=1为字指令。

(2)B2字节各字段定义如下: MOD--给出指令的寻址方式。8086的一条指令中,最多可使用两个操作数,它们不能同时位于存储器中,最多只能有一个是存储器操作数。当MOD=11时为存储器方式,即有一个操作数位于存储器中;MOD=00,没有位移量; MOD01,只有低8位位移量,需将符号扩展8位,形成16位; MOD=10有16位位移量。当MOD=1l时,为寄存器方式,两个操作数均为寄存器。 REG--表示指令中只有一个操作数,这个操作数为寄存器,可见表3-1,表中左部示出寄存器对应的编码。 R/M--R/M受MOD制约。当 MOD=11(即寄存器方式时),由此字段给出指令中第二个操作数所在的寄存器编码;当MOD≠11时,此字段用来指出应如何计算指令中使用的存储器操作数的有效地址。MOD和R /M字段表示的有效地址 EA计算方法如表3-1所示,共2 4种。   (3) B3~B6字节这四个字节一般是给出存储器操作数地址的位移量(即偏移量)和/或立即操作数。位移量可为8位,也可为16位,这由MOD来决定。8086规定16位的字位移量的低位字节放于低地址单元,高位字节放于高地址单元。 若指令中只有8位位移量, 8086在计算有效地址时,自动用符号将其扩展成一个16位的双字节数,以保证有效地址的计算不产生错误,实现正确的寻址。指令中的立即操作数位于位移量的后面。若B3,B4有位移量,立即操作数就位于B5,B6。若指令中无位移量,立即操作数就位于B3,B4字节。总之,指令中缺少的项将由后面存在的项向前顶替,以减少指令长度。 3.2 8086的寻址方式   8086的操作数可隐含在操作码中,也可以是操作数字段中的操作数本身,还可以是存放操作数的地址,如寄存器,I/0端口及存储器。对存储器,给出的或是存储器地址,或是产生存储器地址的信息。从表3

汇编语言指令分类详解

3.1 8086/8088寻址方式 计算机中的指令由操作码字段和操作数字段组成。 操作码:指计算机所要执行的操作,或称为指出操作类型,是一种助记符。 操作数:指在指令执行操作的过程中所需要的操作数。该字段除可以是操作数本身外,也可以是操作数地址或是地址的一部分,还可以是指向操作数地址的指针或其它有关操作数的信息。 寻址方式就是指令中用于说明操作数所在地址的方法,或者说是寻找操作数有效地址的方法。8086/8088的基本寻址方式有六种。 1.立即寻址 所提供的操作数直接包含在指令中。它紧跟在 操作码的后面,与操作码一起放在代码段区域中。 如图所示。 例如:MOV AX,3000H 立即数可以是8位的,也可以是16位的。若 是16位的,则存储时低位在前,高位在后。 立即寻址主要用来给寄存器或存储器赋初值。 2.直接寻址 操作数地址的16位偏移量直接包含在指令中。它与操作码—起存放在代码段区域,操作数一般在数据段区域中,它的地址为数据段寄存器DS加上这16位地址偏移量。如图2-2所示。 例如:MOV AX,DS:[2000H];

图2-2 (对DS来讲可以省略成MOV AX,[2000H],系统默认为数据段)这种寻址方法是以数据段的地址为基础,可在多达64KB的范围内寻找操作数。 8086/8088中允许段超越,即还允许操作数在以代码段、堆栈段或附加段为基准的区域中。此时只要在指令中指明是段超越的,则16位地址偏移量可以与CS或SS或ES相加,作为操作数的地址。 MOV AX,[2000H] ;数据段 MOV BX,ES:[3000H] ;段超越,操作数在附加段 即绝对地址=(ES)*16+3000H 3.寄存器寻址 操作数包含在CPU的内部寄存器中,如寄存器AX、BX、CX、DX等。 例如:MOV DS,AX MOV AL,BH 4.寄存器间接寻址 操作数是在存储器中,但是,操作数地址的16位偏移量包含在以下四个寄存器SI、DI、BP、BX之一中。可以 分成两种情况: (1)以SI、DI、BX间接寻址,则 通常操作数在现行数据段区域 中,即数据段寄存器(DS)*16 加上SI、DI、BX中的16位偏移 量,为操作数的地址, 例如:MOV AX,[SI] 操作数地址是:(DS)*16+(SI) (2)以寄存器BP间接寻址,则操作数在堆栈段区域中。即堆栈段寄存器(SS)*16与BP的内容相加作为操作数的地址, 例如:MOV AX,[BP] 操作数地址是:(SS)*16+(BP)若在指令中规定是段超越的,则BP的内容也可以与其它的段寄存器相加,形成操作数地址。 例如:MOV AX,DS:[BP] 操作数地址是:(DS)*16+(BP)5.变址寻址 由指定的寄存器内容,加上指令中给出的8位或16位偏移量(当然要由一个

汇编语言指令

ORG 0000H NOP ;空操作指令 AJMP L0003 ;绝对转移指令 L0003: LJMP L0006 ;长调用指令 L0006: RR A ;累加器A内容右移(先置A为88H) INC A ; 累加器A 内容加1 INC 01H ;直接地址(字节01H)内容加1 INC @R0 ; R0的内容(为地址) 的内容即间接RAM加1 ;(设R0=02H,02H=03H,单步执行后02H=04H) INC @R1 ; R1的内容(为地址) 的内容即间接RAM加1 ;(设R1=02H,02H=03H,单步执行后02H=04H) INC R0 ; R0的内容加1 (设R0为00H,单步执行后查R0内容为多少) INC R1 ; R1的内容加1(设R1为01H,单步执行后查R1内容为多少) INC R2 ; R2的内容加1 (设R2为02H,单步执行后查R2内容为多少) INC R3 ; R3的内容加1(设R3为03H,单步执行后查R3内容为多少) INC R4 ; R4的内容加1(设R4为04H,单步执行后查R4内容为多少) INC R5 ; R5的内容加1(设R5为05H,单步执行后查R5内容为多少) INC R6 ; R6的内容加1(设R6为06H,单步执行后查R6内容为多少) INC R7 ; R7的内容加1(设R7为07H,单步执行后查R7内容为多少) JBC 20H,L0017; 如果位(如20H,即24H的0位)为1,则转移并清0该位L0017: ACALL S0019 ;绝对调用 S0019: LCALL S001C ;长调用 S001C: RRC A ;累加器A的内容带进位位右移(设A=11H,C=0 ;单步执行后查A和C内容为多少) DEC A ;A的内容减1 DEC 01H ;直接地址(01H)内容减1 DEC @R0 ;R0间址减1,即R0的内容为地址,该地址的内容减1 DEC @R1 ; R1间址减1 DEC R0 ; R0内容减1 DEC R1 ; R1内容减1 DEC R2 ; R2内容减1 DEC R3 ; R3内容减1 DEC R4 ; R4内容减1 DEC R5 ; R5内容减1 DEC R6 ; R6内容减1 DEC R7 ; R7内容减1 JB 20H,L002D;如果位(20H,即24H的0位)为1则转移 L002D: AJMP L0017 ;绝对转移 RET ;子程序返回指令 RL A ;A左移 ADD A,#01H ;A的内容与立即数(01H)相加 ADD A,01H ; A的内容与直接地址(01H内容)相加 ADD A,@R0 ; A的内容与寄存器R0的间址内容相加 ADD A,@R1 ; A的内容与寄存器R1的间址内容相加

微机原理课后题答案第二章

第二章 1. 8086CPU 内部由哪两部分组成?它们的主要功能是什么? 答:8086CPU 内部由执行单元EU 和总线接口单元BIU 组成。 主要功能为:执行单元EU 负责执行指令。它由算术逻辑单元(ALU)、通用寄存器组、 16 位标志寄存器(FLAGS)、EU 控制电路等组成。EU 在工作时直接从指令流队列中取指令代码,对其译码后产生完成指令所需要的控制信息。数据在ALU 中进行运算,运算结果 的特征保留在标志寄存器FLAGS 中。 总线接口单元BIU 负责CPU 与存储器和I/O 接口之间的信息传送。它由段寄存 器、指令指针寄存器、指令队列、地址加法器以及总线控制逻辑组成。 2. 8086CPU 中有哪些寄存器?各有什么用途? 答:8086CPU 内部包含4 组16 位寄存器,分别是通用寄存器组、指针和变址寄存器、段寄 存器、指令指针和标志位寄存器。 (1)通用寄存器组包含4 个16 位通用寄存器AX、BX、CX、DX,用以存放普通 数据或地址,也有其特殊用途。如AX(AL)用于输入输出指令、乘除法指令,BX 在间接寻址中作基址寄存器,CX 在串操作和循环指令中作计数器,DX 用于乘除法指令等。(2)指针和变址寄存器BP、SP、SI 和DI,在间接寻址中用于存放基址和偏移地址。(3)段寄存器CS、DS、SS、ES 存放代码段、数据段、堆栈段和附加段的段地址。(4)指令指针寄存器IP 用来存放将要执行的下一条指令在现行代码段中的偏移地址。(5)标志寄存器Flags 用来存放运算结果的特征。 3. 8086CPU 和8088CPU 的主要区别是什么? 答:8088CPU 的内部结构及外部引脚功能与8086CPU 大部分相同,二者的主要不同之处如 下: (1)8088 指令队列长度是4 个字节,8086 是6 个字节。 (2)8088 的BIU 内数据总线宽度是8 位,而EU 内数据总线宽度是16 位,这样对16 位数的存储器读/写操作需要两个读/写周期才能完成。8086 的BIU 和EU 内数据总线宽度都 是16 位。 (3)8088 外部数据总线只有8 条AD7~AD0,即内部是16 位,对外是8 位,故8088 也称为准16 位机。 (4)8088 中,用IO/M信号代替M/IO信号。 (5)8088 中,只能进行8位数据传输,BHE不再需要,改为SS0,与DT/R 和IO/M 一起决定最小模式中的总线周期操作。 4. 简要解释下列名词的意义:CPU,存储器,堆栈,IP,SP,BP,段寄存器,状态标志,控制标志,物理地址,逻辑地址,机器语言,汇编语言,指令,内部总线,系统总线。答:CPU:中央处理器,是整个计算机系统的控制中心,主要功能是进行算术和逻辑运算,以及发出各种控制信号以协调整个系统正常工作。 存储器:是计算机系统中的记忆元件,用于存储指令和数据。 堆栈:在存储器中开辟的一个区域,用来存放需要暂时保存的数据。其操作特点是先 进后出。 IP:指令指针寄存器,用来存放将要执行的下一条指令在现行代码段中的偏移地址。SP:堆栈指针寄存器,用于指向当前栈顶单元。 BP:基址指针,间接寻址中用于存放基址,隐含段地址为SS。

相关文档
最新文档