2第2章 指令系统
- 格式:ppt
- 大小:813.00 KB
- 文档页数:44
计算机系统结构第2章第⼆章指令系统第⼀节指令系统设计概述⼀、指令系统概述1、指令系统的设计、应⽤及实现(1)指令系统的设计*机器指令:计算机硬件实现的运算或操作的命令;第i 种格式:OP i A 1A 2编码⽰例:00110 000~111 000~111功能⽰例:A 1←(A 1)+(A 2)第j 种格式:OP j A 编码⽰例:10110 000~111功能⽰例:A←(A)+1*指令系统设计:定义所有机器指令的格式(含编码)。
*指令系统:所有机器指令的集合;第1种:第2种:…第n 种:OP 1A 1A 2OP 2A OP n A 1A 2…(2)指令系统的应⽤第i种指令应⽤⽰例a:00110 000 001 功能AH←(AH)+(AL)⽰例b:00110 011 000 功能BL←(BL)+(AH)应⽤程序⽰例:从主存地址为2000H开始的100个元素累加求和机器指令格式机器指令程序汇编程序1011wreg data 1011001001100100 CX←1001011100100000000 00100000LP:BX←2000H1011000000000000 AL←0 0000000w mod reg r/m 0000000100000111AL←AL+[BX] 01000reg 01000001 BX←BX+1 11100010 disp 11100010 11111000 LOOP LP*指令系统应⽤:按指令格式要求,根据应⽤需要、编写程序中的指令(即指令格式的实例)。
(3)指令系统的实现指令功能实现步骤—ID 对IR 的OP 译码,⽤输出信号控制某⼀部件⼯作;ID 对IR 的A 译码,⽤输出信号控制相关REG 的读/写;信号有效时间由时序部件及该指令功能实现步骤决定。
指令操作或运算—部件功能实现及数据传递等的组合。
*指令系统实现:按指令格式要求,⽤硬件实现指令功能。
*设计/应⽤实现三者关系:类似C 语⾔设计、⽤C 语⾔编程、C 语⾔编译及执⾏平台!☆指令系统的实质—软件与硬件之间的界⾯(“约定”)!指令译码器ID I OP A 内部总线CPU ID D 功能部件1功能部件n …寄存器1寄存器m…指令寄存器IR :……存储总线MAR/MDR2、指令系统涉及内容(1)指令格式包含信息分析第i种指令格式:OP i A1A2②数据:(A1)=OP i⽀持类型的地址为A1的数据①操作:A1←(A1) OP i(A2) 或A 2←(A2) OP i(A1)硬件⽀持的数据类型(含数据长度)可存放数据部件类型、部件的编址⽅式部件中同⼀数据地址的表⽰⽅式(2)涉及内容*指令集结构:指令集总体框架,如存放部件、寄存器数量;*指令集功能:⽀持操作的类型;*数据表⽰:操作⽀持的数据类型、数据存储格式等。
第02章单⽚机指令系统与汇编语⾔程序设计习题解答第02章单⽚机指令系统与汇编语⾔程序设计习题解答⼀、填空题1. MCS-51单⽚机指令系统中有 111 条指令。
2. MCS-51单⽚机指令中,Rn表⽰ R0、R1、R2、R3、R4、R5、R6、R7中的⼀个。
3. MCS-51单⽚机指令中,@表⽰间接寻址。
4. MCS-51单⽚机指令中,$表⽰当前指令的⾸地址。
5. MCS-51单⽚机寻址⽅式有⽴即数、直接地址、寄存器、寄存器间接、变址、相对、位寻址等七种寻址⽅式。
6. 指令MOVC A, @A+PC的功能是将A的内容与PC当前值相加作为程序存储器地址,再将该地址单元的内容传送到A 。
7. 指令JBC CY, LOOP是 3 字节、 2 个机器周期指令。
8. 指令DA A的功能是对A中当前值进⾏⼗进制调整。
9. 调⽤⼦程序时,将PC当前值保存到堆栈。
10. MCS-51单⽚机堆栈操作的基本原则是先进后出。
⼆、简答题1. MCS-51单⽚机指令⼀般由哪⼏个部分组成?各部分的功能是什么?答:MCS-51单⽚机指令⼀般由标号、操作码助记符、操作数、注释四部分组成。
标号是⼀条指令的标志,是可选字段,与操作码之间⽤“:”隔开;设置标号的⽬的是为了⽅便调⽤或转移。
标号的选择应遵从下列规定:标号由1~8个字母或数字组成,也可以使⽤⼀个下划线符号“_”。
第⼀个字符必须是字母。
指令助记符或系统中保留使⽤的字符串不能作为标号。
标号后⾯需要有⼀个冒号。
⼀条语句可以有标号,也可以没有标号,取决于程序中其它语句是否需要访问这条语句。
操作码规定指令的功能,是⼀条指令的必备字段,如果没有操作码,就不能成为指令。
它与操作数之间⽤“空格”隔开。
操作数是指令操作的对象。
分为⽬的操作数和源操作数两类,它们之间⽤“,”分隔。
操作数是可选字段。
⼀条指令可以有0、1、2、3个操作数。
注释是对指令功能的说明解释。
以“;”开始。
2. 程序中,伪指令ORG和END的作⽤是什么?答:ORG⽤于定义汇编语⾔源程序或数据块存储的起始地址。
第2章指令系统及汇编语言程序设计一.选择题1.(D) 2.(A) 3.(C) 4.(D) 5.(A) 6.(D)7.(C) 8.(C) 9.(C) 10.(D) 11.(D) 12.(C)13.(C) 14.(A) 15.(A) 16.(D) 17.(B) 18.(C)19.(C) 20.(C) 21.(D) 22.(D) 23.(D) 24.(C)25.(A) 26.(A) 27.(B) 28.(C) 29.(B) 30.(D)31.(B) 32.(C) 33.(C) 34.(A) 35.(C) 36.(D)37.(D) 38.(A) 39.(B) 40.(C) 41.(D) 42.(D)43.(B) 44.(C) 45.(C) 46.(B) 47.(B) 48.(D)49.(A) 50.(B) 51.(A) 52.(C)二、判断题1.× 2.× 3.× 4.√ 5.√ 6.√ 7.×8.× 9.×10.√ 11.× 12.× 13.× 14.× 15.× 16.√17.√18.√19.× 20.× 21.× 22.√ 23.× 24.√ 25.√26.√三、填空题1.53F30H2. 0 ; 0; 0; 13.操作码;操作数4. ZF=05.SS6. 1234H,0FFEH7.立即四、阅读程序1.38(或26H)2.将以10100H起始的50个单元的内容传送至以10200H起始的50个单元中3.将数据段中以2000H起始的100个单元中的内容清零4.统计以BUFFER为首址的100个单元中数字为1的个数存入ARRAY单元5.统计N字中0的个数6.将N的内容拆为两部分分别存入BH,BL中7.AX=0008H8.AL=34H9.AX=23H10.AX=0004H11.AX=0055H12.将从键盘接受到的两个字符拼在一起13.BH=0FFH,BL=0EH14.AX=000FH15.AL=15H,AF=1,BL=0FH16.90H17.向屏幕上依次输出0,1,…。