计算机组成原理4.1_指令系统
第4章指令系统和控制器部件
4.1 指令系统
4.2 控制器部件
指令:
是指示计算机执行基本操作的命令。指令也是用户使用计算机的最小功能单位。
从计算机组成的层次结构来说,计算机的指令有微指令、机器指令和宏指令之分。
微指令:是微程序级的命令,它属于硬件;
宏指令:是由苦干条机器指令组成的软件指令,它属于软件;
机器指令:则介于微指令与宏指令之间,通常简称为指令。每一条指令可完成一个独立的算术运算或逻辑运算操作。
本章所讨论的指令是机器指令。
指令系统:
一台计算机支持(或称使用)的全部指令的集合构成该计算机的指令系统。
由于指令与计算机的性能以及硬件结构密切相关,所以不同系列、不同型号的计算机其指令系统是不一样的。
4.1 指令系统
指令的基本格式
指令格式的优化
寻址方式
指令系统举例
Th-union汇编语言程序设计
汇编指令有多少个一、指令的格式
任何一条机器指令由一组有意义的二进制代码构成,称为一个指令字。
1、机器指令
0000000000010010
0000000100010010
用机器指令编写的程序是计算机惟一能够直接识别并执行的程序,称为机器语言程序。机器语言程序被称为目标程序(目标代码)。
机器直接执行,速度快。
缺点:与机器硬件直接相关,通用性差;编程不直观、难以记忆、使用很不方便。
机器语言的特点
为了克服机器语言的缺点,人们采用助记符表示机器指令的操作码,用符号代替操作数的存放地址等,这样就形成了汇编指令。
例:机器指令: 0000011100100001
汇编指令: MVRR R2,R1
用汇编指令编写的程序称为汇编源程序。
一条机器指令对应一条汇编指令。用汇编指令编写程序就直观方便得多。
用汇编语言编写程序及执行的过程
程序员
MVRR R0,R1
ADD R0,R3
…
…
汇编程序
1000100111011000
…
…
…
执行
汇编语言指令
机器指令代码
(翻译)
高级语言
汇编语言虽然较机器语言直观,但仍然烦琐难懂。于是人们研制出了高级程序设计语言。高级程序设计语言接近于人类自然语言的语法习惯,与计算机硬件无关,易被用户掌握和使用。
(1) 用C语言实现:
Main ()
{ int a, b, sum;
a=123; b=456;
sum=a+b
}
例如:编程实现 123 加 456 →求和
(2)用8086汇编语言实现:
a dw 123
b dw 456
sum dw ?
Code segment
assume CS: Code, DS:Data
Main:mov ax,data
mov ds,ax
mov ax, a
add ax, b
mov sum , ax
mov ax, 4c00h
int 21h
Main endp
Code ends
end main
(3)用机器语言实现:
键入代码:
-
e cs:100 A1 0F 01 6>03 06 11 01 A3 13 01 B8 00 4C CD 21 为数据分配空间:
-e ds:10F 7B 00 C8 01 00 00
三种语言编写程序占用字节数
21
MACHINE3>
机器语言
21
ASMSUM
汇编语言
4330
CSUM.EXE
高级语言( C )
可执行程序占用字节数
程序设计语言
操作码
操作数地址码
任何一条机器指令由一组有意义的二进制代码构成,称为一个指令字。其基本格式可划分成二个部分:
2. 指令的基本格式
表明操作数存放的位置,以便到操作数完成指令的功能。
规定指令完成何种功能。
Th-union的机器指令汇编指令
例如:
0000000000010010 ADD R1,R2
0000000100010010 SUB R1,R2
0000100100110000 INC R3
1000100000010000 MVRD R1,0055
0000000001010101
指令的操作码字段
指令的操作数字段
0 0 5 5
1)操作码
定长操作码
变长操作码
在指令系统中,每一条指令都有唯一确定的操作码。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论