3-1-指令系统-CPU寄存器
- 格式:ppt
- 大小:1.20 MB
- 文档页数:52
第3章 TMS320C28x DSP的CPU与指令系统 本章主要内容:Ø 中央处理器(Central Processing Unit)・CPU结构(CPU Structure)・CPU的寄存器(CPU Registers)Ø 寻址方式(Addressing Modes)・寻址方式概述(Introduction to Addressing Modes )・直接、堆栈、间接、寄存器、立即寻址 (Direct, Stack, Indirect, Register and Immediate Addressing)Ø C28x DSP指令系统(Instruction Set for C28x DSP) 3.1中央处理器 3.1.1 CPU结构 C28x DSP的中央处理器(CPU)结构包括三个部分:CPU内核、仿真逻辑单元和CPU信号,如图3-1所示。
图3-1 C28x CPU组成概念框图 仿真逻辑单元的主要功能是监视和控制CPU以及其他外设的工作情况,并实现对设备的测试和调试功能。
用户通过CCS的调试器工具以及硬件JTAG仿真器来访问和操作仿真逻辑单元。
调试器通过仿真逻辑单元可以直接控制存储器接口以获得寄存器或存储器的内容或者对存储器的内容进行修改。
仿真逻辑单元还能够响应多重调试事件,如用于调试的两条指令ESTOP0或ESTOPl产生的软件断点,对程序空间和数据空间指定单元的访问,以及来自调试器或其他硬件的请求,这些调试事件都能够在程序的执行过程中产生一个断点,使得C28x进入调试停止状态。
CPU的信号是指由CPU发出或者输入到CPU的工作信号,主要包括4种:①存储器接口信号,这些信号是指CPU通过并行总线对存储器进行读写访问的时序信号,包括地址信号、数据信号和读写控制信号等。
C28x的CPU是32位的,但它能根据不同存储器字段的长度(16位或32位)来区分不同的存取操作(16位或32位)。
《汇编语言》习题1——指令系统参考答案习题1-1 在8086CPU中,如果SS的内容设置为1A4BH,堆栈的长度为100H字节,问SP寄存器的初始化值为多少?SP初始指向哪个主存物理地址?答:SP寄存器的初始化值为:100HSP初始指向的主存物理地址是:1A5B0H习题1-2 分别说明下述8086指令中的源操作数和目的操作数的寻址方式。
指令目的操作数源操作数(1) MOV ES, AX 寄存器寻址寄存器寻址(2) ADD DS:[12H],AL 直接寻址寄存器寻址(3) SUB BX,1200H 寄存器寻址立即寻址(4) SHR AX,1 寄存器寻址立即寻址(5) AND -28H[BP][DI], AX 基址变址寻址寄存器寻址(6) MOV CX,LAB1[BX] 寄存器寻址基址/变址寻址(7) SBB AX, [BX] 寄存器寻址寄存器间接寻址(8) OR DX,-360H[SI] 寄存器寻址基址/变址寻址(9) ADC VAR1,CX 直接寻址寄存器寻址(10) XOR [DI],AX 寄存器间接寻址寄存器寻址习题1-3分别说明下述指令语句的语法正确与否,如果有错,说明其错误。
指令正误(1)MOV DS, 1234H 错误,立即数不能直接传送到段寄存器中(2)ADD AH,AL 正确(3)SUB CS,AX 错误,不能对CS直接操作(4)MOV BX,[BX][SI] 正确(5)ADC VAR1,[BP][DI] 错误,两个操作数不能同时都在存储器中(6) SBB [BX][BP],AX 错误, 基址变址寻址方式中不能两个寄存器都是基址寄存器(7)PUSH 5678H 错误,立即数不能作为源操作数直接压入堆栈(8)SHL [BP][SI],CL 错误,目的操作数没有明确指明是字还是字节(9)ROR AX,2 错误,移位次数大于1时,需将其提前存入CL中(10)NEG AX,BX 错误,操作数个数错误(11)LEA CS,AX 错误,目的操作数只能是16位通用寄存器(12)MOV AL,BX 错误, 操作数位数不一致(13)ADD DS:200H,AX 正确(14)AND [BX][BP],AH 错误, 基址变址寻址方式中不能两个寄存器都是基址寄存器(15)OR BH,-16H[BP] 正确(16)CLC AX 错误,操作数个数错误(17)MUL AX,BX 错误,操作数个数错误(18)DIV 12H 错误,源操作数不能是立即数习题1-4 在8086中,如果(DS)=1A26H,(SS)=20B0H,(BX)=1200H,(SI)=0034H, (BP)=5700H(1B484H)=1234H,(26200H)=5678H,给出下面各指令或指令组执行后相应寄存器/存储单元的结果。
习题解答第1章计算机系统概述1. 给出以下概念的解释说明1. 中央处理器(CPU)通常把控制部件、运算部件和各类寄存器互联组成的电路称为中央处理器(Central Processing Unit,CPU),简称处理器。
2. 算术逻辑部件(ALU)用来进行算术逻辑运算的部件,即算术逻辑部件(Arithmetic Logic Unit)。
3. 通用寄存器临时存放从主存取来的数据或运算的结果。
4. 程序计数器(PC)在执行当前指令的过程中,自动计算出下一条指令的地址并送到PC(Program Counter,PC)中保存。
5. 指令寄存器(IR)从主存取来的指令需要临时保存在指令寄存器(Instruction Register,IR)。
6. 控制器用于自动逐条取出指令并进行译码的部件,即控制元件(Control Unit,CU),也称控制器。
7. 主存储器用来存放指令和数据。
8. 总线CPU为了从主存取指令和存取数据,需要通过传输介质和主存相连,通常把连接不同部件进行信息传输的介质称为总线。
9. 主存地址寄存器(MAR)CPU送到地址线的主存地址应先存放在主存地址寄存器(Memory Address Register, MAR)中。
10. 主存数据寄存器(MDR)CPU发送到或从数据线取来的信息存放在主存数据寄存器(Memory Data Register,MDR)中。
11. 机器指令计算机能理解和执行的程序称为机器代码或机器语言程序,其中的每条指令都由0和1组成,称为机器指令。
12. 存储程序13. 指令操作码操作码字段指出指令的操作类型,如取数、存数、加、减、传送、跳转等。
14. 高级程序设计语言高级程序设计语言简称高级编程语言,是指面向算法设计的、较接近于日常英语书面语言的程序设计语言,如BASIC、C/C++、Java等。
15. 汇编语言通过用简短的英文符号和机器指令建立对应关系,以方便程序员编写和阅读程序。
CPU寄存器的功能和说明4个数据寄存器(EAX、EBX、ECX和EDX)2个变址和指针寄存器(ESI和EDI)2个指针寄存器(ESP和EBP)6个段寄存器(ES、CS、SS、DS、FS和GS)1个指令指针寄存器(EIP)1个标志寄存器(EFlags)1、数据寄存器数据寄存器主要⽤来保存操作数和运算结果等信息,从⽽节省读取操作数所需占⽤总线和访问存储器的时间。
32位CPU有4个32位的通⽤寄存器EAX、EBX、ECX和EDX。
对低16位数据的存取,不会影响⾼16位的数据。
这些低16位寄存器分别命名为:AX、BX、CX和DX,它和先前的CPU中的寄存器相⼀致。
4个16位寄存器⼜可分割成8个独⽴的8位寄存器(AX:AH-AL、BX:BH-BL、CX:CH-CL、DX:DH-DL),每个寄存器都有⾃⼰的名称,可独⽴存取。
程序员可利⽤数据寄存器的这种”可分可合”的特性,灵活地处理字/字节的信息。
寄存器AX和AL通常称为累加器(Accumulator),⽤累加器进⾏的操作可能需要更少时间。
累加器可⽤于乘、除、输⼊/输出等操作,它们的使⽤频率很⾼;寄存器BX称为基地址寄存器(Base Register)。
它可作为存储器指针来使⽤;寄存器CX称为计数寄存器(Count Register)。
在循环和字符串操作时,要⽤它来控制循环次数;在位操作中,当移多位时,要⽤CL来指明移位的位数;寄存器DX称为数据寄存器(Data Register)。
在进⾏乘、除运算时,它可作为默认的操作数参与运算,也可⽤于存放I/O的端⼝地址。
在16位CPU中,AX、BX、CX和DX不能作为基址和变址寄存器来存放存储单元的地址,但在32位CPU中,其32位寄存器EAX、EBX、ECX和EDX不仅可传送数据、暂存数据保存算术逻辑运算结果,⽽且也可作为指针寄存器,所以,这些32位寄存器更具有通⽤性。
2、变址寄存器32位CPU有2个32位通⽤寄存器ESI和EDI。
第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,简述下列基本概念:指令,指令系统,机器语言,汇编语言,高级语言。
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,指出下列指令的本质区别。
1、计算机的硬件包括运算器、控制器、存储器、输入设备和输出设备五部分。
2、总线一般可分为三类,它们分别是地址总线、数据总线和控制总线。
3、将二进制数01100100转换成十进制数是 100 ,转换成八进制数是 144 ,转换成十六进制数是 64H 。
4、在一个8位的机器系统中,补码表示数的范围从 -128 到 +127 。
5、CPU能直接访问主存和 Cache ,但不能访问外存和 I/O设备。
6、Cache的映射方式有直接映像、全相联映像和组相联映像三种。
其中组相联映像方式,适度地兼顾了前两者的优点又尽量避免其缺点,比较理想。
7、磁盘的寻址信息格式由驱动器号、盘面号、磁道号、扇区号四部分组成。
8、目前的CPU包括运算器,控制器和CACHE(一级)。
9、在程序执行过程中,控制器控制计算机的运行总是处于取指令、分析指令和执行指令的循环之中。
10、微程序入口地址是译码器根据指令的操作码产生的。
11、微程序控制器的核心部件是控制存储器,它一般用只读存储器构成。
16、计算机中各功能部件是通过总线连接的,它是各部件间进行信息传输的公共通路。
和共享。
21、一个定点数由符号位和数值域两部分组成。
根据小数点位置不同,定点数据有23、码距的定义是编码系统中任两个合法码之间的最少二进制位数的差异。
24、8421码用二进制求和时,当和超过 9 时,需要做加6调整修正。
25、有二进制数D4D3D2D1,奇偶校验值用P表示,则奇校验为 P=D4+D3+D2+D1,偶校验为P=D4+D3+D2+D1,奇偶校验只能检测奇数个错,无法检测偶数个错。
26、在浮点加减法运算中,当运算结果的尾数的绝对值大于1时,需要对结果进行向右规28、一个完整的磁盘存储器由三部分组成,其中磁盘驱动器又称磁盘机或磁盘子系统,是独立于主机的一个完整的设备,磁盘控制器是磁盘机与主机的接口部件,磁记录介质用于保存信息。
29、CPU中保存当前正在执行的指令的寄存器为指令寄存器IR,保存下一条指令地址的寄存器为程序计数器PC。