当前位置:文档之家› 第三章指令系统

第三章指令系统

第三章指令系统
第三章指令系统

第三章指令系统习题参考答案(三)

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 @只或@DPTR

(4)变址寻址。

对应的空间有:

? RO腕间(采用@A+DPTR,@A+PC

(5)相对寻址。

? RO腕间(采用JC rel )

(6)位寻址。

?片内RAM勺20H~2FH单元的128可寻址位

? SFR的可寻址位

3、访问特殊功寄存器SFR 可以采用哪些寻址方式?答:直接寻址、位寻址

4、访问内部RAM 单元可以采用哪些寻址方式?答:寄存器寻址、直接寻址、寄存

器间接寻址

5、访问外部RAM 单元可以采用哪些寻址方式?答:寄存器间接寻址

6、访问外部程序存储器可以采用哪些寻址方式?答:立即寻址、变址寻址、相对寻

7、为什么说布尔处理功能是80C51 单片机的重要特点?答:布尔处理功能是

MCS-51 系列单片机的一个重要特征,在物理结构上,MCS-51 单片机有一个布尔(位)处理器,对位地址空间具有丰富的位操作指令。它在进行位操作时,以进位标志做为位累加器。

1

8、对于80C52 单片机几个内部RAM 还存在高128 字节,应采用何种方式

访问?

答:对片外RAM 进行访问时,需要以下四条指令进行:

读:

(1) MOVX A,@DPTR;

( 2 ) MOVX A,@Ri;

写:

( 3) MOVX@DPTR,A;

( 4) MOVX@ Ri,A;

9、试根据指令编码表写出下列指令的机器码。

1) MOV A , #88H

2) MOV R3, 50H

3) MOV P1.1, #55H

4) ADD A,@R1

5) SETB 12H

答: 指令对应的机器码为

(1) 74H

(2) ABH

(3) 75H

(4) 27H

10、完成某种操作可以采用几条指令构成的指令序列实现,试写出完成以下每种操

作的指令序列。

(1)将R0 的内容传送到R1;

(2)内部RAM 单元60 睥内容传送到寄存器R2;

(3)外部RAM 单元1000H 的内容传送到内部RAM 单元60H;

(4)外部RAM 单元1000H 的内容传送到寄存器R2;

(5)外部RAM 单元10000H 的内容传送到外部RAM 单元2000H。

答:(1)MOV A, R0;

MOV R1,A;

(2) MOV R2,60H;

(3)MOV DPTR,#1000H;

MOVX A,@DPTR;

MOV 60H,A;

(4) MOV DPTR,#1000H;

MOVX A,@DPTR;

MOV R2,A;

(5) MOV DPTR,#1000H;

MOVX A,@DPTR;

MOV R0,#2000H;

MOVX @R0,A;

11、若(R1)= 30H, (A)= 40H , (30H)= 60H , (40H)= 08H。试

分析执行下列程序段后上述各单元内容的变化。

答:MOVX A,@R1 ;A=60H

MOV @R1,40H ; (30H)=08H

MOV 40H,A ;(40H)=40H

MOV R1,#7FH ;(R1)=7FH

2

即最终结果为(R1)=7FH, (40H)=40H, (30H)=08H,( A)=60H

12、若(A) = E8H , (RO) = 40H , ( R1) = 20H , ( R4) = 3AH , (40H) = 2CH ,

(20)= 0FH,试指出CY、AC和OV的值。

答:(1) MOV A, @R0; (A)=2CH, R0=40H

( 2 ) MOV40H,#0FH; (40H)=0FH

( 3 ) ADD A,R4; (A)=22H, (CY)=1, (AC)=1, (OV)=0

( 4 ) SWAP A; (A)=8EH

( 5 ) DEC@R1; (20H)=0EH, (R1)=20H

( 6 XCHD A, @R1; (A)=EFH, (20H)=08H, (R1)=20H 13、若(50H)= 40H,试写出执行以下程序段后累加器A、寄存器R0及内部

RAM 答:的40H、41H 和42H 单元中的内容各为多少?

MOV A ,50H ; (A)=40H

MOV R0, A ; (R0)=40H

MOV A,#00H ; (A)=00H

MOV @R0, A ; (40H)=00H

MOV A ,3BH ; (A)=(3BH)

MOV 41H, A ; (41H)=(3BH)

MOV 42H, 41H ; (42H)=(3BH)

即最终结果为 (R0) =40H , (40H)=00H , (A)=(3BH) ,(41H)=(3BH) ,

(42H)=(3BH)

14、试用位操作指令实现下列逻辑操作。要求不得改变未涉及位的内容 ( 1 )使ACC 。0 置位;

( 2)清除累加器高4位; ( 3)清除ACC.3, ACC.4, ACC.5, ACC.6.

答:⑴CLR ACC.0 ;使ACC.0置位

(2) CLR ACC.7

CLR ACC.6

CLR ACC.5

CLR ACC.4

(3) CLR ACC.3

CLR ACC.4

CLR ACC.5

CLR ACC.6

15、试编写程序,将内部RAM 的20H、21H 和22H 三个连续单元的内容存入

2FH 、2EH 和2DH 单元。

答:MOV A,20H

MOV R0,#2FH

LOOP: MOV @R0,A

INC A

DEC R0

CJNE R0,#2CH, LOOP

SJMP $

16、试编写程序,完成两个16位数的减法:F4DH —2B4EH ,结果存入内部

3

20、

RAM 的30H 和31H , 31H 单元存差的高8位,30H 单元存差的低8位 答: CLR C

MOV A, #4DH

MOV R0,#4EH

SUBB A,R0

MOV 30H, R0

MOV A,#7FH

MOV R0,#2BH

SUBB A,R0

MOV 31H, R0

17、试编写程序,将R1中的低4位数与R2中的高4位数合并成一个8位数, 并将其存入在 R1 中

利用一对内外循环,运行 20000个机器周期,从而延迟 20ms 。 汇编程序如下:

LOOP: MOV R1,#00H

INC R1

NEXT: MOV R0,#00H

INC R0

NOP

CJNE R0,#13H , NEXT

NOP

CJNE R1,#C8H,LOOP

SJMP $ MOV R1,#40H

XCHD A,@R1

MOV R1,A

试编写程序, 将内部 RAM 的 20H 和 21H 单元的两个无符号数相乘,结果 存放在 R2、 R3中,R2中存放高8位,R3存放低8位。

答: MOV A,20H

MOV B,21H

MUL AB MOV R2, B

MOV R3, A

若(CY )= 1, ( P1) =10100011B, ( P3)= 01101100B 试指出执行下列 程序段后, CY 、 P1 口及 P3 口内容的变化情况。

答: MOV P1.3, C

MOV P1.4, C ; (P1)=10111011B

MOV C, P1.6 ; (CY)=0

MOV P3.6, C

MOV C, P1.0 ; (CY)=1

MOV P3.4, C ; (P2)=00111100B

即最终为 ( CY ) =1 ,(P1)=10111011B ,(P2)=00111100B

答:MOV A, R2

MOV 40H,R1

18、 19 、 若单片机的主频为12MHz ,试用循环转移指令编写延时 20ms 的延时子程 序,并说明这种软件延时方式的优缺点。

分析:一个机器周期 =12 个晶振周期 =1us

第三章指令系统

第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.寻址:就是寻找操作数的地址,最终目的是寻找所需的操作数。 五、简答题

第三章 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中。

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

第三章指令系统习题参考答案(三) 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系列单片机的一个重要特征,在物理结构

第三章 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章 指令系统

第3章 指令系统 3.1 指令系统的概述及符号约定 指令是CPU执行某种操作的命令。微处理器(MPU)或微控制器(MCU)所能识别全部 指令的集合称为指令系统或指令集。指令系统是制造厂家在设计CPU时所赋予它的功能,用户必须正确的书写和使用指令。因此学习和掌握指令的功能与应用非常重要,是程序设计的基础。本章将详细的介绍SPCE061A指令系统的寻址方式和各种指令。 μ’nSP?单片机指令按其功能可划分为: 1) 数据传送指令,包括立即数到寄存器、寄存器到寄存器、寄存器到存储 器存储器到寄存器的数据传送操作; 2) 算术运算,包括加、减、乘运算; 3) 逻辑运算,包括与、或、异或、测试、移位等操作; 4) 转移指令,包括条件转移、无条件转移、中断返回、子程序调用等操作; 5) 控制指令,如开中断、关中断、FIR滤波器的数据的自由移动等操作。 按寻址方式划分,可分为以下几类: 立即数寻址 这种寻址方式是操作数以立即数的形式出现,例如:R1 = 0x1234,是把16 进制数0x1234赋给寄存器R1。 存储器绝对寻址 这种寻址方式是通过存储器地址来访问存储器中的数据,例如:R1 = [0x2222],访问0x2222单元的数据。 寄存器寻址 这种寻址方式是操作数在寄存器中,例如:R1 = R2,是把寄存器R2 中的数 据赋给寄存器R1。 寄存器间接寻址 这种寻址方式是操作数的地址由寄存器给出,例如:R1 = [BP],是把由BP 指向的内存单元的数据送寄存器R1。 变址寻址 这种寻址方式下,操作数的地址由基址和偏移量共同给出,例如:R1 = [BP+0x34]。 表3.1中的符号是在指令系统叙述过程中所要用到的,在此统一进行约定。

第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)→A MOV R0,A ;寄存器寻址(A)→R0 MOV P1,#0F0H ;立即数寻址0F0→P1

MOV @R0,30H ;直接寻址(30H)→(R0) MOV DPTR,#3848H ;立即数寻址3848H→DPTR MOV 40H,38H ;直接寻址(38H)→40H MOV R0,30H ;直接寻址(30H)→R0 MOV P0,R0 ;寄存器寻址(R0 )→P0 MOV 18H,#30H ;立即数寻址30H→18H MOV A,@R0 ;寄存器间接寻址((R0)) →A MOV 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,指出下列指令的本质区别。 8,MOV A,DATA ;直接寻址2字节1周期 MOV A,#DATA ;立即数寻址2字节1周期 MOV DATA1,DATA2 ;直接寻址3字节2周期 MOV 74H,#78H ;立即数寻址3字节2周期 如果想查某一指令的机器码,字节数或周期数可查阅书本后面的附录A 9,设R0内容为32H, A的内容为48H, 片内RAM的32H单元内容为80H, 40H单元内容为08H, 请指出在执行下列程序段后上述各单元内容的变化。 9、 MOV A,@R0 ;((R0))=80H→A MOV @R0,40H ;(40H)=08H→(R0) MOV 40H,A ;(A)=80→40H MOV R0,#35H ;35H→R0 最后结果:(R0)=35H (A)=80H,(32H)=08H,(40H)=80H 10,如何访问SFR,可使用哪些寻址方式? 10、用直接寻址,位寻址,寄存器寻址 11,如何访问片外RAM,可使用哪些寻址方式? 11、只能采用寄存器间接寻址(用MOVX指令) 12,如何访问片内RAM,可使用哪些寻址方式? 12、低128字节:直接寻址,位寻址,寄存器间接寻址,寄存器寻址(R0~R7) 高128字节:直接寻址,位寻址,寄存器寻址 13,如何访问片内外程序存储器,可使用哪些寻址方式? 13、采用变址寻址(用MOVC指令)

第3章 PIC单片机指令系统

第3章 指令系统
3.1 3.2 3.3 3.4 汇编语言 寻址方式 PIC18F452指令系统 程序设计举例

3.1
汇编语言
? 指令:是 指令:是CPU CPU根据人的意图来执行某种操作的命令。 根据人的意图来执行某种操作的命令。 ? 程序设计语言:是实现人机交换信息的基本工具,分为机 器语言、汇编语言和高级语言。 ? 机器语言:用二进制编码表示每条指令 机器语言:用二进制编码表示每条指令,是计算机能 ,是计算机能直接 直接 识别和执行的语言。 识别和执行 的语言。 ? 汇编语言:是用助记符、符号和数字 汇编语言:是用助记符、符号和数字等来表示指令的程序 等来表示指令的程序 设计语言。它与机器语言指令是一一对应的。 设计语言。 它与机器语言指令是一一对应的。 ? 汇编语言编写的程序能否直接被计算机执行? ? 高级语言:面向问题和计算过程的语言,可通用于各种不 同的计算机。用户编程时不必了解所用计算机的指令系统。

Why study assembly language?
? Many critical programs are written in assembly language ? To better understand the functions and architecture of a computer system ? To better understand the working of high level languages ? To design efficient programs ? A tool for writing system programs ? Embedded systems development
– Mixed languages programming
3

第三章计算机硬件体系结构报告

第三章计算机硬件体系结构 一、填空题 1.地址总线的位数决定了计算机的能力,数据总线的宽度决定了计算机的。2.计算机的运算速度用每秒钟所能执行的______数表示,单位是______。 3.按照总线上传送信息类型的不同,可将总线分为___________、___________、__________三种。 4.在计算机中通常以___________作为单位传送信息的。 5.指令一般包括___________和___________两部分。 6.若一台微机的地址总线位长为32位,则其最大寻址空间为___________。 7.CPU包括________、__________和_______________三个基本部分。 8. 光盘按读写性能可分为___________、___________、__________三种。 二、单项选择题 1. 一个完整的微型计算机硬件系统应由____、存储器、输入设备和输出设备构成。 A. 硬盘 B. ROM和RAM C. CPU D. 显示器 2. 计算机中指令的执行主要由___完成的。 A. 存储器 B. 控制器 C. CPU D. 总线 3. 微型计算机的CPU主要由两部分构成,它们是____。 A. 内存和控制器 B. 内存和外存 C. 运算器和控制器 D. 外存和运算器 4. 磁盘经过高级格式化后,其表面形成多个不同半径的同心圆,这些同心圆称为____。 A. 磁道 B. 扇区 C. 族 D. 磁面 5. 下面有关计算机的叙述中,是正确的。 A. 计算机的主机包括CPU、内存储器和硬盘三部分 B. 计算机程序必须装载到内存中才能执行 C. 计算机必须具有硬盘才能工作 D. 计算机键盘上字母键的排列方式是随机的 6. 计算机的内存储器比辅助存储器_______。 A. 存储更多信息,但存取速度慢 B. 可以存储的信息少,但存取速度快 C. 存储更多信息,且存取速度快 D. 可以存储的信息少,且存取速度慢 7. 计算机的输入输出设备中,处理速度最快的是_____。 A. 软盘 B. 键盘 C. 打印机 D. 硬盘 8. 在计算机中指令主要存放在中。 A. CPU B. 内存 C. 键盘 D. 磁盘 9. 下列有关存储器读写速度的排列,正确的是。 A. RAM>Cache>硬盘>软盘 B. Cache>RAM>硬盘>软盘 C. Cache>硬盘>RAM>软盘 D. RAM>硬盘>软盘>Cache 10. CPU中的可存放少量数据。 A. 存储器 B. 辅助存储器 C. 寄存器 D. 只读存储器

第三章 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将根据不同指令作相应的安排。 表3-1 8086指令格式 (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,表中左部示出寄存器对应的编码。

第3章 8086基本指令系统

1、根据下列要求,写出相应的汇编指令(1)把BX寄存器和CX寄存器的内容相加,结果存入CX寄存器中。 (2)用寄存器BX和SI基地址变址寻址方式把存储器中的一个字节与CL寄存器的内容相加,并把结果送到CL寄存器中。 (3)用寄存器BX和位移量0A5H的寄存器相对寻址方式把存储器中的一个字和(AX)相加,并把结果送回存储器中。 (4)用位移量为0137H的直接寻址方式把存储器中的一个字与数4B68H相加,并把结果送回该存储单元中。 (5)把数0E2H与(AL)相加,并把结果送回BL中。 答案: (1)ADD CX,BX (2)ADD CL,[BX][SI] (3)ADD [BX][0A5H], AX (4)MOV AX,4B68H ADD WORD PTR[0137H] ,AX (5)ADD BL ,0E2H 3、设当前数据段寄存器的内容为1400H,在数据段的偏移地址3000H单元内,含有一个内容为0FC20H和8000H的指针,它们是一个16位变量的偏移地址和段地址,试写出把该变量装入AX的指令序列,并画图表示出来。 答案: MOV BX, [3000H] MOV AX, [3000H+2] MOV ES, AX MOV AX, ES:[BX] 4、在ARRAY数组中依次存储了7个字数据,紧接着是名为ZIAREA的字单元,如下:ARRAY DW 45, 48, 7, 200, 23000, 55, 0 ZIAREA DW ? ①如果BX包含数组ARRAY的初始地址,请编写指令将数据0传送给ZIAREA单元。 ②如果BX包含数据0在数组中的位移量,请编写指令将数据0传送给ZIAREA单元。答:(1) MOV AX, [BX+(7-1)*2] MOV [BX+(7)*2], AX (2) MOV AX, ARRAY [BX] MOV ARRAY [BX+2], AX 5、如TABLE为数据段中0035单元的符号名,其中存放的内容为5678H,试问以下两条指令执行完后,AX寄存器的内容是什么? ①MOV AX, TABLE ②LEA AX, TABLE 答:MOV AX, TABLE是将TABLE单元的内容送到AX,(AX)=5678H LEA AX,TABLE是将TABLE单元的有效地址送到AX,(AX)=0035H 6、执行下列指令后,AX寄存器中的内容是什么? TABLE DW 50, 40, 30, 20, 10 ENTRY DW 4 … MOV BX, OFFSET TABLE ADD BX, ENTRY MOV AX, [BX] 答:(AX)=1400H 7、下列ASCII码串(包括空格符)依次存储在起始地址为CSTRING的字节单元中:CSTRING DB 'TABLE ADDRESSING' 请编写指令将字符串中的第1个和第7个字符传送给DX寄存器。 答:MOV DH, CSTRING MOV DL, CSTRING+7-1 9、求出以下各十六进制数与十六进制数62 A0之和,并根据结果设置标志位SF、ZF、C F和OF的值。 ①1234 ②4321 ③CFA0 ④9D60 答:(1) 和为74D4H;SF=0,ZF=0,CF=0,O F=0 (2) 和为A5C1H;SF=1,ZF=0,CF=0,OF=1 (3) 和为3240H;SF=0,ZF=0,CF=1,OF=0 (4) 和为0000H;SF=0,ZF=1,CF=1,OF=0 10、写出执行以下计算的指令序列,其中A、 B、C、D、E均为存放16位带符号数单元的地址。 ①C←E+(C-A) ②C←E-(A+6)-(D+9) ③C←(E*A)/(B+6), 余数放在D中 答:(1) MOV AX, C ;以下程序都未考虑带符号数的溢出 SUB AX, A ADD AX, E MOV C, AX (2) MOV BX, A ADD BX, 6 MOV CX, D ADD CX, 9 MOV AX, E SUB AX, BX SUB AX, CX

第三章指令系统及寻址方式

第三章指令系统及寻址方式 一、教学内容 1.指令格式 2.指令寻址方式 3.指令系统 二、要求掌握指令的书写格式、指令的寻址方式和每一条指令的作用。 三、重点掌握指令的寻址方式和每一条指令的功能作用。 四、难点在于理解和掌握指令的寻址方式,怎样找到操作数所在存储单元的存放地址以及运用指令编程的技巧等。 五、本章分为4讲,每讲2学时。 第一讲指令寻址方式 1.指令的书写格式 指令有两种书写格式: ?机器指令:由一串二进制数描述 ?符号指令:用英文字母缩写词描述。符号指令的书写格式如下: 标号:操作助记符 [目的操作数][,源操作数];注释 几点说明: 1)标号—表示某一条指令所在存储单元的首址。标号应由字母打头,后跟字母、数字及特殊字符均可,但不能用关键字。 标号的用法: ①标号一般放在子程序(子过程)的第一条指令的开头; ②标号一般放在转移指令要转去的目的地的第一条指令的开头。 ③标号一般放在其他符号定义的前面。 2)指令助记符(操作助记符):MOV;ADD;SUB;END。 3)操作数—有源操作数和目的操作数,他们之间用“,” 分隔。操作数也可有可无。 2.数据寻址方式 一般在指令中包含有操作码和操作数,怎样找到指令中的操作数和操作数所在的地址,这就是寻址方式。

1)立即寻址 操作数直接包含在代码段的指令中。 如: MOV EAX,H MOV BX,6688H MOV AX,1234H ?立即数只能作为源操作数 ?立即寻址主要用来给通用寄存器或存储器赋值 ?不允许给段寄存器直接赋值 2)寄存器寻址 操作数在寄存器中。 32位寄存器:EAX、EBX、ECX、EDX、 ESP、EBP、 ESI、EDI 16位寄存器:AX、BX、CX、DX、SP、BP、SI、 DI、CS、DS、SS、ES、FS、GS 8 位寄存器:AH、AL、BH、BL、 CH、CL、DH、DL 如: MOV AX,BX MOV EDI,ESI MOV AL,CL 3)存储器寻址 操作数在存储器中,其地址由指令以某种方式指出。 ① 16位指令模式下的存储器寻址 16位指令模式寻址结构由4部分组成:段基址×10H+基址+变址+偏移量基址:BX、BP ,变址:SI、DI ,偏移量:8位或16位 如果有效地址在BX,SI或DI中,则以DS寄存器内容为段基址; 如果有效地址在BP中,则以SS段寄存器的内容为段基址。 如果使用段超越(CS:ES:DS:SS:),前缀操作数可以放在冒号前指定的段。例如:MOV ES:[DI],AL MOV ES:2000H, AL

相关主题
文本预览
相关文档 最新文档