1、指令系统、机器语言、汇 编语言 Dr. Chen Hu tommychen74 020-31984767 1 什么是指令系统 n指令系统是CPU执行的基本操作,是计算机软 件和硬件的界面。 n分为RISC和CISC两大类 n指令的基本内容 q算术逻辑运算 q存储器访问 q转移指令 2 CPU中的基本概念 n内存 q统一编址的存储单元 q存储单元中数据的含义由程序解释 n算术逻辑部件(ALU) q完成算术(加、减、乘、除等)和逻辑运算(与、 或、非、异或等) n寄存器 qCPU上的一小块存储区域,用于存储中间结果 3 CPU中的基本概念 n控制器:控制指令的执行过程 q程序计数器(PC):存放下
2、一条指令地址的寄存 器 qIR:存放当前指令的寄存器 q数据寄存器 4 指令的执行过程 n根据PC从存储器中取出指令,保存到IR寄存 器中; n根据IR寄存器中的指令内容进行操作; q计算 q存储器访问 q转移指令 q修改PC值 5 一个虚拟的计算机Pep-7 nPep-7的寄存器结构 qPC(8位) qIR(24位) q累加器A(16位) q状态位N(1位) q状态位Z(1位) nPep-7的存储器结构 q有4096个字节 6 nPep-7的指令系统 n指令格式(24位) 0 指令操作码(5位)寻址方式(2位):00立即寻址;01直接寻址 数据(16位) 7 一些指令实例 操作码(5位)含义
3、操作码(5位)含义 00000停机00001将操作数装入A 00010将A的内容存入 到操作数中 00011将操作数加到A 中 00100将寄存器A中减 去操作数 11011将字符输入操 作数 11100从操作数输出 字符 8 两种不同的寻址方式 n立即寻址:数据存放在操作数中 nA=11111b=31 n直接寻址:数据的地址存放在操作数中 nA=11111b=31,从内存单元31取一个字到A中 00010000 0000000000011111 00010001 0000000000011111 9 程序输出“Hello” n二进制代码 11100000 00000000 01001000
4、E0 00 48 11100000 00000000 01101001 E0 00 65 11100000 00000000 01101100 E0 00 6C 11100000 00000000 01101100 E0 00 6C 11100000 00000000 01101111 E0 00 6F 10 程序的二进制代码存储 地址 内容 0000 :11100000 00000000 01001000 E0 00 48 0003 :11100000 00000000 01101001 E0 00 65 0006 :11100000 00000000 01101100 E0 00 6C 0
5、009 :11100000 00000000 01101100 E0 00 6C 000C :11100000 00000000 01101111 E0 00 6F 11 程序的执行过程 PC=0000H 1、取指令 IR=PC=0000H=E0 00 48 2、译码 根据指令前5位发现此指令为输出指令; 3、取操作数 因为是立即寻址方式,所以取指令中的内容0048H。 4、执行 将操作数作为输出。屏幕显示“H” 5、PC自加 PCPC+3=0003H 12 PC机的引导过程 nBIOS(Basic Input Output System)是在主 板上预先烧制好的启动代码; n操作系统的内容存
6、储在硬盘上。 n操作的主要流程包括: q系统加电,从BIOS开始取指令执行,完成硬件自 检 q从硬盘上读入引导扇区内容到内存,并执行 q由引导扇区内容从硬盘上读取操作系统到内容,引 导进入操作系统。 13 汇编语言(Assemble Language) n汇编语言(Assemble Language):一种低级语 言,用助记符表示特定计算机的机器语言指令 n汇编器(Assembler):将汇编语言程序翻译成 机器代码的程序 14 Pep-7的汇编语言 LOADA h#0008B, i 操作码操作数寻址方式 指令含义:将0008H放入到寄存器A中 指令的机器码: 00010000 0000000000001000 15 总结 n指令是CPU执行的基本单位 n指令的具体定义构成了机器语言,是一套精巧的二进 制编码 q指令系统分为RISC和CISC两大类 q指令系统一般包括运算指令,存储器访问指令、转移指令等 q指令系统的寻址方式:立即寻址,直接寻址 n指令的执行过程 q指令序列存储在存储器中(von Neumann结构) q由PC从存储器中取出指令, q经过译码执行等过程完成一条指令的执行 n汇编程序和汇编器 16