W343-计算机组成-Chapter2 指令系统 (2)
合集下载
计算机系统结构02指令系统(数据表示)
6
2.1.2 浮点数据的表示方法
r 一、浮点数的表示方式: Nm e m
(1)两个数值 尾数m:数制(小数或整数)和码制(原码或补码)。 阶码e: 整码,移码(偏码、增码、余码)或补码。
(2)两个基值:
尾数基值rm:2、4、8、16和10进制等。
阶码基值re:通常为2进制。
(3)两个字长:长度和物理位置,均不包含符号位 尾数长度p: 尾数部分按基值计算的长度 阶码长度q : 阶码部分的二进制位数。
二进制字长:L2= kp2+q2+2
由于F1和F2二进制字长相同,即L1= L2,得
p1+q1 =kp2+q2 (2.1)
24
字长和表数的范围确定时,尾数基值与标数精 度的关系
F1的表数范围是:|N1max|22q1
F2的表数范围是:|N2max|(2k)2q2
F1和F2的表数的范围相同,得到:2q1 k2q2
(rm, p) 2 m
(rm) rm1
rm
在字长确定的情况下,如何选择尾数基值rm,
使表数范围最大、表数精度和表数效率最高。
23
2.浮点数尾数基值的选择 假设有两种表示方式F1和F2,它们二进
制字长相同,尾数都用原码或补码、小 数表示,阶码都用移码、整数表示,阶 码的基值均为2,尾数基值不同。 浮点数表示方式F1:rm1=2,p1,q1, 二进制字长:L1= p1+q1+2 浮点数表示方式F2:rm2=2k,p2,q2,
浮点数的存储方式如下:
1位 1位
q位
p位
mf ef
e
m
注:mf 为尾数的符号位,ef 为阶码的符号位,e 为阶码的值,m 为尾数的值。9
2.1.2 浮点数据的表示方法
r 一、浮点数的表示方式: Nm e m
(1)两个数值 尾数m:数制(小数或整数)和码制(原码或补码)。 阶码e: 整码,移码(偏码、增码、余码)或补码。
(2)两个基值:
尾数基值rm:2、4、8、16和10进制等。
阶码基值re:通常为2进制。
(3)两个字长:长度和物理位置,均不包含符号位 尾数长度p: 尾数部分按基值计算的长度 阶码长度q : 阶码部分的二进制位数。
二进制字长:L2= kp2+q2+2
由于F1和F2二进制字长相同,即L1= L2,得
p1+q1 =kp2+q2 (2.1)
24
字长和表数的范围确定时,尾数基值与标数精 度的关系
F1的表数范围是:|N1max|22q1
F2的表数范围是:|N2max|(2k)2q2
F1和F2的表数的范围相同,得到:2q1 k2q2
(rm, p) 2 m
(rm) rm1
rm
在字长确定的情况下,如何选择尾数基值rm,
使表数范围最大、表数精度和表数效率最高。
23
2.浮点数尾数基值的选择 假设有两种表示方式F1和F2,它们二进
制字长相同,尾数都用原码或补码、小 数表示,阶码都用移码、整数表示,阶 码的基值均为2,尾数基值不同。 浮点数表示方式F1:rm1=2,p1,q1, 二进制字长:L1= p1+q1+2 浮点数表示方式F2:rm2=2k,p2,q2,
浮点数的存储方式如下:
1位 1位
q位
p位
mf ef
e
m
注:mf 为尾数的符号位,ef 为阶码的符号位,e 为阶码的值,m 为尾数的值。9
《指令系统》课件
随着应用需求的多样化,指令系统的多样性也在不断发展 。
不同的指令系统针对不同的应用领域进行优化,以满足各 种复杂的应用需求。
例如,针对高性能计算领域的处理器,其指令系统会更加 注重浮点运算和并行处理;针对嵌入式领域的处理器,其 指令系统会更加注重低功耗和实时性。
指令系统与其他技术的融合
随着技术的发展,指令系统与其他技术 的融合成为一种趋势。
为了减少访问主存的延迟,指 令系统使用缓存来存储经常访 问的数据和指令。通过缓存管 理技术,系统可以更快地访问 这些数据和指令。
为了降低能耗和提高能源效率 ,指令系统采用了一系列节能 技术,如动态电压调节、动态 频率调节、休眠模式等。
为了提高系统的安全性,指令 系统可以提供加密和解密功能 ,保护数据的机密性和完整性 。此外,还可以通过权限控制 和访问控制机制来限制对敏感 资源的访问。
03 指令系统的实现方式
汇编语言实现指令系统
汇编语言概述
汇编语言是一种低级语言,与机器语言有很高的相似度。 它使用助记符表示指令,易于理解和编写。
汇编指令系统
汇编语言中的指令系统通常与特定的处理器架构相关联, 包括算术、逻辑、控制和输入/输出指令。
汇编程序
汇编程序是一种将汇编语言代码转换为机器语言的编译器 。它逐条将汇编指令翻译为对应的机器码,并生成可执行 文件。
例如,与人工智能技术的融合,使得处 理器能够更好地支持人工智能算法和应 用;与网络技术的融合,使得处理器能 够更好地支持云计算和边缘计算等应用
。
通过与其他技术的融合,指令系统的功 能和应用领域得到了进一步拓展,同时
也促进了相关技术的发展和创新。
谢的任务, 确保各个任务按照预定的顺序或优先级执行 。
D
不同的指令系统针对不同的应用领域进行优化,以满足各 种复杂的应用需求。
例如,针对高性能计算领域的处理器,其指令系统会更加 注重浮点运算和并行处理;针对嵌入式领域的处理器,其 指令系统会更加注重低功耗和实时性。
指令系统与其他技术的融合
随着技术的发展,指令系统与其他技术 的融合成为一种趋势。
为了减少访问主存的延迟,指 令系统使用缓存来存储经常访 问的数据和指令。通过缓存管 理技术,系统可以更快地访问 这些数据和指令。
为了降低能耗和提高能源效率 ,指令系统采用了一系列节能 技术,如动态电压调节、动态 频率调节、休眠模式等。
为了提高系统的安全性,指令 系统可以提供加密和解密功能 ,保护数据的机密性和完整性 。此外,还可以通过权限控制 和访问控制机制来限制对敏感 资源的访问。
03 指令系统的实现方式
汇编语言实现指令系统
汇编语言概述
汇编语言是一种低级语言,与机器语言有很高的相似度。 它使用助记符表示指令,易于理解和编写。
汇编指令系统
汇编语言中的指令系统通常与特定的处理器架构相关联, 包括算术、逻辑、控制和输入/输出指令。
汇编程序
汇编程序是一种将汇编语言代码转换为机器语言的编译器 。它逐条将汇编指令翻译为对应的机器码,并生成可执行 文件。
例如,与人工智能技术的融合,使得处 理器能够更好地支持人工智能算法和应 用;与网络技术的融合,使得处理器能 够更好地支持云计算和边缘计算等应用
。
通过与其他技术的融合,指令系统的功 能和应用领域得到了进一步拓展,同时
也促进了相关技术的发展和创新。
谢的任务, 确保各个任务按照预定的顺序或优先级执行 。
D
微型计算机原理第三章 指令系统-2
他们分别执行字或字节的加法和减法运算, 除INC和DEC不影响CF标志外,其他按定 义影响全部状态标志位 操作数组合:
运算指令助记符 reg, imm/reg/mem 运算指令助记符 mem, imm/reg
ADD dest,src ;加法:dest←dest+src
;ADD指令使目的操作数加上源操作数, 和的结果送到目的操作数
对段寄存器的操作不灵活
MOV指令传送功能图示
立即数
存 储 器 MOV指令也并非任意传送!
通用寄存器 AX BX CX DX BP SP SI DI
段寄存器 CS DS ES SS
非法指令的主要现象: 两个操作数的类型不一致 无法确定是字节量还是字量操作 两个操作数都是存储器 段寄存器的操作有一些限制
寄存器具有明确的字节和字类型
MOV指令--存储器传送
mov al,[bx] ;al←ds:[bx] mov dx,[bp] ;dx←ss:[bp+0] mov dx,[bp+4] ;dx←ss:[bp+4] mov es,[si] ;es←ds:[si]
不存在存储器向存储器的传送指令
MOV指令--段寄存器传送 mov [si],ds mov ax,ds ;ax←ds mov es,ax ;es←ax←ds
pop ax pop wvar
小结:堆栈操作的特点
堆栈操作的单位是字,进栈和出栈只对字量 字量数据从栈顶压入和弹出时,都是低地址字
节送低字节,高地址字节送高字节
堆栈操作遵循先进后出原则,但可用存储器寻
址方式随机存取堆栈中的数据
堆栈段是程序中不可或缺的一个内存区,常用
来
临时存放数据 传递参数 保存和恢复寄存器
运算指令助记符 reg, imm/reg/mem 运算指令助记符 mem, imm/reg
ADD dest,src ;加法:dest←dest+src
;ADD指令使目的操作数加上源操作数, 和的结果送到目的操作数
对段寄存器的操作不灵活
MOV指令传送功能图示
立即数
存 储 器 MOV指令也并非任意传送!
通用寄存器 AX BX CX DX BP SP SI DI
段寄存器 CS DS ES SS
非法指令的主要现象: 两个操作数的类型不一致 无法确定是字节量还是字量操作 两个操作数都是存储器 段寄存器的操作有一些限制
寄存器具有明确的字节和字类型
MOV指令--存储器传送
mov al,[bx] ;al←ds:[bx] mov dx,[bp] ;dx←ss:[bp+0] mov dx,[bp+4] ;dx←ss:[bp+4] mov es,[si] ;es←ds:[si]
不存在存储器向存储器的传送指令
MOV指令--段寄存器传送 mov [si],ds mov ax,ds ;ax←ds mov es,ax ;es←ax←ds
pop ax pop wvar
小结:堆栈操作的特点
堆栈操作的单位是字,进栈和出栈只对字量 字量数据从栈顶压入和弹出时,都是低地址字
节送低字节,高地址字节送高字节
堆栈操作遵循先进后出原则,但可用存储器寻
址方式随机存取堆栈中的数据
堆栈段是程序中不可或缺的一个内存区,常用
来
临时存放数据 传递参数 保存和恢复寄存器
计算机系统结构 第二章(指令系统)
本章内容>>数据表示 >>浮点数数据表示
浮点数格式
两个符号: mf :尾数符号 e f :阶码符号 1位 mf 1位 ef
N mr
q位 e
两个数值: e m :尾数的值 m e :阶码的值 p位 m 两个字长: p :尾数的长度
两个基: rm :尾数的基 re :阶码的基
分析:当R>3时有 BY/BX < 1。 在实际应用中经常是R >10。 同济大学.电子与信息工程学院.计算机科学与工程系
本章内容>>数据表示 >>自定义数据表示
5 之 1
数据描述符表示法
思想
对于许多连续存放的同属性数据,例如:向 量、矩阵、多维数组等,可以采用一个数据描述 符作用于这样的一组数据,而没有必要让每个数 据都带标志符。
《Computer Architecture》V3
答: 程序在X中的存储空间: 程序在Y中的存储空间:
BY 30I
30I
2 32I BX 32I R
2 35I R
二者的比值为:
BY BX
2 35I 15R 35 R 2 32I 16R 32 32I R
《Computer Architecture》V3 同济大学.电子与信息工程学院.计算机科学与工程系
本章内容>>数据表示
2 之 1
基本数据表示
内容 定点数、浮点数、十进制数、逻辑数、字符等。 目的 支持数据结构,提高系统效率和性能/价格。 设计 根据应用需求,设计各种参数、指标。 举例 浮点数数据表示的设计。
浮点数尾数下溢 的处理
问题 在浮点数操作(相加、相 乘、右移等)过程中产生的 下溢会造成精度的损失。 解决 设计下溢处理方法,有多 种方法,不同的方法有不同 的优点和缺点,其出发点和 应用场合也不一样,应根据 需要进行选择。
C54x第二章 指令系统
利用ADDS实现 位数据装入 实现32位数据装入 利用 实现
ld ld #0,dp ; 设置数据页指针
@60h,16,a ; 将60H的内容装如 的高 位 的内容装如A的高 的内容装如 的高16位 ; 将61H的内容加到 的低 位 的内容加到A的低 的内容加到 的低16位 ; 直接装入 位到 寄存器, 直接装入32位到 寄存器, 位到B寄存器 ;等同于前两条语句
实现16位定点加法 实现 位定点加法
• ‘C54X中提供了多条用于加法的指令, 中提供了多条用于加法的指令, 中提供了多条用于加法的指令 如ADD,ADDC,ADDM和ADDS。其 , , 和 。 用于无符号数的加法运算, 中ADDS用于无符号数的加法运算, 用于无符号数的加法运算 ADDC用于带进位的加法运算(如32位 用于带进位的加法运算( 用于带进位的加法运算 位 扩展精度加法),而ADDM专用于立即 扩展精度加法),而 专用于立即 ), 数的加法。 数的加法。
第二பைடு நூலகம் 指令系统
以下为一些常用指令,希望大家对各指令有所了解。 以下为一些常用指令,希望大家对各指令有所了解。 TMS320C54x的指令集有近两百条指令,按功能分为 的指令集有近两百条指令, 的指令集有近两百条指令 如下几类:
•算术运算指令 •逻辑运算指令 •程序控制指令 •装入和存储指令
一、算术运算指令
2、 、 减 法 指 令
实现16位定点减法 实现 位定点减法
• ‘C54X中提供了多条用于减法的指令,如 中提供了多条用于减法的指令, 中提供了多条用于减法的指令 SUB,SUBB,SUBC和SUBS。其中 , , 和 。其中SUBS 用于无符号数的减法运算, 用于无符号数的减法运算,SUBB用于带 用于带 进位的减法运算( 进位的减法运算(如32位扩展精度的减 位扩展精度的减 法),而SUBC为移位减,DSP中的除法 ),而 为移位减, 中的除法 为移位减 就是用该指令来实现的。 指令与ADD 就是用该指令来实现的。SUB指令与 指令与 指令一样,有许多的寻址方式。 指令一样,有许多的寻址方式。
计算机系统结构--指令系统
l 浮点数表示方式的表数效率:
l η=-可--表-示-的--规-格-化-浮--点-数-的--个-数=--2-⋅-(r-m-−-1-)-⋅r-m-p-−1-⋅-2⋅-r-e-q +-1--
全部的浮点个数 rm-1
2 ⋅ rm p ⋅ 2 ⋅ req
=-----------r-m----------
表数的效率
u支持高级语言,有利于编译
u程序代码量短
压栈
弹栈
u支持嵌套和递归
u其它,中断等 栈顶
2.2.4 间接寻址和变址寻址
l 间接寻址与变址寻址 l 举例: l 将N个元素的数组从一块内存搬到另一块
内存
AS
AS
2.2.4 间接寻址和变址寻址
l Start: move asr,asi
;保存源数组起始位置
l
move adr,adi ;保存目标数组起始位置
Win,Linux Operating
System
BIOS
Processor Memory I/O system
I/O system Memory Processor
Datapath & Control
Digital Design Circuit Design
transistors Semiconductor..
1
1
q
p
mf
ef
e
m
l M的最后一位不可信,是通过舍入得到 的
l 不同的进制具有不同的精度 l 当二进制时精度最高
表数的效率
l 尾数最高位不为零的浮点数称为规格化浮点 数。机器零除外
l 规格化浮点数表示精度最高
l 浮点的存储以及运算的结果要规格化 l 运算过程中可能出现非规格化浮点数,---冗余
计算机组成原理-指令系统
1 2
早期计算机的指令系统
以简单指令为主,操作码短,地址码少,寻址方 式简单。
现代计算机的指令系统
以复杂指令为主,操作码长,地址码多,寻址方 式多样化。
3
未来计算机的指令系统
随着技术的发展,指令系统将更加智能化、自动 化和个性化。
02
指令的格式与寻址方式
ቤተ መጻሕፍቲ ባይዱ
指令的格式
操作码字段
表示指令的操作类型,如加、减、乘、除等。
提高指令执行速度
优化操作码与地址码的设计,可以减少指令的解码 时间,从而提高指令的执行速度。
支持更多的操作和寻址方 式
通过扩展操作码和优化地址码的设计,可以 支持更多的操作和寻址方式,从而增强指令 系统的功能和灵活性。
04
指令系统的功能与性能分析
指令系统的功能分析
指令集架构
定义了计算机的基本操作和功能,包括数据类型、 操作码、寻址方式等。
指令执行单元
指令执行单元是计算机硬件的核心组件之一,负责执行解码后的指令。它包括算术逻辑单元 (ALU)、控制单元(CU)和寄存器文件等组件。
指令系统的软件实现技术
汇编语言
汇编语言是一种低级语言,与机器语言相对应。它使用助记符表示指令,方便程序员编写底层程 序。汇编语言编译器将汇编语言程序转换成机器语言程序。
能技术的发展,指令系统将更加注重智能优化能力,以提高程序的执行
效率和准确性。
06
指令系统实例分析
x86指令系统实例
指令集特点
x86指令系统是复杂指令集计算机(CISC)的代表,指令数量庞大, 寻址方式多样,支持多种数据类型和操作。
指令格式
x86指令格式多样,包括单字节、双字节和多字节指令,以及可变 长度的指令。
第2章 指令系统
(8) LD #lk [,SHFT],dst
功能: dst = #lk<<SHFT 将长立即数lk移位后, 送入累加器A或B。
(9) LD #lk,16,dst
功能: dst = #lk<<16 将长立即数lk左移16位 后,送入累加器A或B。
8
第2章 指令系统
1.指令系统中的符号和缩略语
序号
41 42 43 44 45 46 47 48 49 50
2019/11/24
符号
n N OVA OVB OVdst OVdst_ OVsrc OVM PA PAR
含
义
XC指令后面的字数,取1或2 指定状态寄存器,N=0为ST0,N=1为ST1 ST0中的累加器A溢出标志 ST0中的累加器B溢出标志 指定目的累加器(A或B)的溢出标志 指定与Ovdst相反的目的累加器的溢出标志 指定源累加器(A或B)的溢出标志 ST1中的溢出方式位 16位立即端口地址(0PA65535) 程序存储器地址寄存器
2019/11/24
DSP原理及应用
19
第2章 指令系统
1.装载指令 即取数或赋值指令,用于将存储器内容或立即
数赋给目的寄存器,共计21条。
格式: 操作码 源操作数 [,移位数] ,目的操作数
功能: 源目操的作操数作按数DLLLLL移指LDDDDTDMRUD位定dTDA数的sPStM进寄累暂累位RLSX####行存AmmmKlkk加存加方MeeeK95页移器mmm器器器式指SSD小195位。移位A位位AAA6或针于RRR位,立立AAAB将9长MMM位 即 即中 中 中移立1TSS的数数的的的6SHH即位-IF短3111-16FT数266结616位T立位位位位64果移位5即数数数S移位TH位移数据据据SI送位移F数位T3入数位1数1数5
功能: dst = #lk<<SHFT 将长立即数lk移位后, 送入累加器A或B。
(9) LD #lk,16,dst
功能: dst = #lk<<16 将长立即数lk左移16位 后,送入累加器A或B。
8
第2章 指令系统
1.指令系统中的符号和缩略语
序号
41 42 43 44 45 46 47 48 49 50
2019/11/24
符号
n N OVA OVB OVdst OVdst_ OVsrc OVM PA PAR
含
义
XC指令后面的字数,取1或2 指定状态寄存器,N=0为ST0,N=1为ST1 ST0中的累加器A溢出标志 ST0中的累加器B溢出标志 指定目的累加器(A或B)的溢出标志 指定与Ovdst相反的目的累加器的溢出标志 指定源累加器(A或B)的溢出标志 ST1中的溢出方式位 16位立即端口地址(0PA65535) 程序存储器地址寄存器
2019/11/24
DSP原理及应用
19
第2章 指令系统
1.装载指令 即取数或赋值指令,用于将存储器内容或立即
数赋给目的寄存器,共计21条。
格式: 操作码 源操作数 [,移位数] ,目的操作数
功能: 源目操的作操数作按数DLLLLL移指LDDDDTDMRUD位定dTDA数的sPStM进寄累暂累位RLSX####行存AmmmKlkk加存加方MeeeK95页移器mmm器器器式指SSD小195位。移位A位位AAA6或针于RRR位,立立AAAB将9长MMM位 即 即中 中 中移立1TSS的数数的的的6SHH即位-IF短3111-16FT数266结616位T立位位位位64果移位5即数数数S移位TH位移数据据据SI送位移F数位T3入数位1数1数5
微型计算机原理第三章 指令系统2PPT课件
;word ptr 说明是字操作
12
非法指令--两个操作数都是存储器
➢ 8088指令系统除串操作指令外,不允许两个操作 数都是存储单元(存储器操作数) MOV buf2, buf1 ;非法指令,修正: ;假设buf2和buf1是两个字变量 ;mov ax,buf1 ;mov buf2,ax ;假设buf2和buf1是两个字节变量 ;mov al,buf1 ;mov buf2,al
第三章 指令系统
指令系统部分
1
标题添加
点击此处输入相 关文本内容
标题添加
点击此处输入相 关文本内容
总体概述
点击此处输入 相关文本内容
点击此处输入 相关文本内容
2
2、指令系统
1、数据传送指令
数据传送是计算机中最基本、最重要的一种操作, 传送指令也是最常使用的一类指令
传送指令把数据从一个位置传送到另一个位置 除标志寄存器传送指令外,均不影响标志位 重点掌握
;指令存在,但不Movzx 有效地址传送指令:LEA 指针传送指令:LES LDS 标志寄存器传送指令:LAHF SAHF 字节交换指令:BSWAP
15
交换指令XCHG(exchange) 把两个地方的数据进行互换
XCHG reg,reg/mem;reg reg/mem 寄存器与寄存器之间对换数据 寄存器与存储器之间对换数据 不能在存储器与存储器之间对换数据
11
非法指令-无法确定是字节量还是字量操作
➢ 当无法通过任一个操作数确定是操作类型时,需 要利用汇编语言的操作符显式指明 MOV [BX+SI], 255 ;非法指令,修正:
;mov byte ptr [bx+si],255
;byte ptr 说明是字节操作
12
非法指令--两个操作数都是存储器
➢ 8088指令系统除串操作指令外,不允许两个操作 数都是存储单元(存储器操作数) MOV buf2, buf1 ;非法指令,修正: ;假设buf2和buf1是两个字变量 ;mov ax,buf1 ;mov buf2,ax ;假设buf2和buf1是两个字节变量 ;mov al,buf1 ;mov buf2,al
第三章 指令系统
指令系统部分
1
标题添加
点击此处输入相 关文本内容
标题添加
点击此处输入相 关文本内容
总体概述
点击此处输入 相关文本内容
点击此处输入 相关文本内容
2
2、指令系统
1、数据传送指令
数据传送是计算机中最基本、最重要的一种操作, 传送指令也是最常使用的一类指令
传送指令把数据从一个位置传送到另一个位置 除标志寄存器传送指令外,均不影响标志位 重点掌握
;指令存在,但不Movzx 有效地址传送指令:LEA 指针传送指令:LES LDS 标志寄存器传送指令:LAHF SAHF 字节交换指令:BSWAP
15
交换指令XCHG(exchange) 把两个地方的数据进行互换
XCHG reg,reg/mem;reg reg/mem 寄存器与寄存器之间对换数据 寄存器与存储器之间对换数据 不能在存储器与存储器之间对换数据
11
非法指令-无法确定是字节量还是字量操作
➢ 当无法通过任一个操作数确定是操作类型时,需 要利用汇编语言的操作符显式指明 MOV [BX+SI], 255 ;非法指令,修正:
;mov byte ptr [bx+si],255
;byte ptr 说明是字节操作
计算机组成原理指令系统讲课文档
常数或地址
常数 address address
3. RAM的指令格式——32位嵌入式处理器
ARM指令集的一种指令格式
cond F
I opcod S Rn Rd operand
e
2
4位 2位 1位 4位 1位 4位 4位 12位
4. Pentium指令格式
指令字长度可变:112字节,典型的CICS结构
指令寻址方式比较简单;数据寻址方式比较复杂
指令的寻址方式
一种是顺序寻址方式
另一种是跳跃寻址方式
第二十四页,共55页。
目录
1. 顺序寻址方式 (PC)+1 -> PC
内存
PC
100
100
设置程序计数器(指令指针寄存器)PC对指令的顺序号 +1
101
计数,该顺序号就是指令在内存中的地址
2. 跳跃寻址方式 目标地址->PC
第七页,共55页。
高级语言与低级语言的比较
比较内容 1 对程序员的训练要求:
(1) 通用算法 (2) 语言规则 (3) 硬件知识 2 对机器独立的程度 3 编制程序的难易程度 4 编制程序所需时间 5 程序执行时间 6 编译过程中对计算机资源 (时间和存储容量)的要求
高级语言
有 较少 不需要 独立 易 短 较长 多
第九页,共55页。
目录
关于地址码个数的有关说明
(1)零地址指令
操作码
两种情况:
一是该指令不需要操作数,如NOP指令 二是操作数隐含,如DAA操作数隐含于累加器AC中
(2)一地址指令(单操作数指令)
操作码
A1
也有两种情况:
一是指令本身只需要一个操作数,如NOT指令 二是被操作数和结果隐含于累加器AC中
第二章微型计算机指令系统PPT课件
也可以是16位数值(0000H~FFFFH) 立即数寻址方式常用来给寄存器或存储单元赋 值.
8
立即数寻址指令
MOV AL,05H ;AL←05H MOV AX,0102H ;AX←0102H
9
立即数寻址的功能
10
立即数寻址的执行
11
2.1.2寄存器寻址
寄存器寻址是指令中指定某些CPU寄存器存放操 作数.上述寄存器可能是通用数据寄存器(8位或16 位)、地址指针或变址寄存器,以及段寄存器.例如: MOV SS,AX
寄存器间接寻址的执行
25
2.1.5变址寻址 变址寻址指令将规定的变址寄存器的内容加上指 令中给出的位移量,即可得到操作数的有效地址. 8086/8088CPU中的变址寄存器有两个:源变址寄 存器SI和目的变址寄存器DI.位移量可以是8位或 16位二进制数,一般情况下操作数在内存的数据段, 但允许段超越. MOV BX,[SI+1003H]
MOV BX,[DI] 2、选择BP作为间址寄存器,隐含的段寄存器为SS
MOV [BP],AX
21
MOV BX,[DI]
MOV [BP],AX
22
无论用SI、DI、BX或者BP作为间址寄存器,都允 许段超越 MOV ES:[DI],AX MOV DX,DS:[BP]
23
寄存器间接寻址的功能
24
指令的操作码在机器里的表示比较简单,只需对每 一种操作指定确定的二进制代码就可以了.指令的 操作数的表示就比较复杂,操作数可以存放在指令 本身(立即数)、寄存器中、存储器,根据其存放的 位置不同,分为三类操作数:立即数操作数、寄存 器操作数、存储器操作数. 所谓寻址方式就是指寻找操作数或操作数地址的 方式.
第二章 微型计算机指令系统
8
立即数寻址指令
MOV AL,05H ;AL←05H MOV AX,0102H ;AX←0102H
9
立即数寻址的功能
10
立即数寻址的执行
11
2.1.2寄存器寻址
寄存器寻址是指令中指定某些CPU寄存器存放操 作数.上述寄存器可能是通用数据寄存器(8位或16 位)、地址指针或变址寄存器,以及段寄存器.例如: MOV SS,AX
寄存器间接寻址的执行
25
2.1.5变址寻址 变址寻址指令将规定的变址寄存器的内容加上指 令中给出的位移量,即可得到操作数的有效地址. 8086/8088CPU中的变址寄存器有两个:源变址寄 存器SI和目的变址寄存器DI.位移量可以是8位或 16位二进制数,一般情况下操作数在内存的数据段, 但允许段超越. MOV BX,[SI+1003H]
MOV BX,[DI] 2、选择BP作为间址寄存器,隐含的段寄存器为SS
MOV [BP],AX
21
MOV BX,[DI]
MOV [BP],AX
22
无论用SI、DI、BX或者BP作为间址寄存器,都允 许段超越 MOV ES:[DI],AX MOV DX,DS:[BP]
23
寄存器间接寻址的功能
24
指令的操作码在机器里的表示比较简单,只需对每 一种操作指定确定的二进制代码就可以了.指令的 操作数的表示就比较复杂,操作数可以存放在指令 本身(立即数)、寄存器中、存储器,根据其存放的 位置不同,分为三类操作数:立即数操作数、寄存 器操作数、存储器操作数. 所谓寻址方式就是指寻找操作数或操作数地址的 方式.
第二章 微型计算机指令系统
计算机组成原理-指令系统
5. 3 指令类型
■
设计一台计算机的指令系统的功能时,须考虑的几 个原则: 完备性或完整性:
▲
指令系统的功能应尽量完备,但较复杂的功能可以通
过程序实现。
▲
兼容性:
高档机的指令系统兼容以前的低档机的指令系统,给
软件资源重复利用带来方便。
▲
均匀性:
数据处理指令能对多种类型的数据进行处理,包括三
2. 直接寻址 Direct Addressing INC 5A12H -dpj
指令直接给出操作数地址
,有效地址=形式地址
操作数地址
格式如下: OP
存储器地址 存储器内容 n 操作码 n+1 操作数地址低8位 n+2 操作数地址高8位 n+3 下条指令
图5.2 按字节编址机器中的直接寻址指令
例: 图中特征码X1指明寻址方式, X1 =0是采用直接寻址。
第5章
指令系统
本章学习导读:
(1)指令的格式、寻址方式和功能分类。 (2)RISC与CISC指令以及适于多媒体应用的MMX 指令。 (3)典型计算机的指令系统。
●
计算机的指令有微指令、机器指令和宏指令之分。
微指令是微程序级的命令,属于硬件; 宏指令是由若干机器指令组成,属于软件; 机器指令介于二者之间,因而是硬件和软件的界面。
1,某机指令字长16位,地址码6位,指令有无地址、 一地址、二地址3种格式,设有N条二地址指令,M 条无地址指令,问一地址指令最多有多少条? 解:设一地址指令最多有X条,((24-N)*26-X) *26=M 得:X=(24-N)*26-M*2-6
w2第二章指令系统
RR型(寄存器-寄存器) 、RX型(寄存器-变址存储器),
RS型(寄存器-存储器) 、S I 型(存储器-立即数), SS型(存储器-存储器器)。 (见下图)
RR格式
00
2
OP
6
Ri
4
Rj
4
共16位
RX格式
01
2
OP
6
Ri
4
RX
4
Rb
D
共32位
12 4 存储器地址
RS格式
10
2
OP
6
Ri
4
RJ
4
Rb
输入/输出类指令(I/O指令)
(1) 外围设备的编址方式:
1)外围设备单独编址法 又分两种:① 编址到设备,即每一个设备一个地址(设备号) ② 编址到寄存器级 2)与主存统一编址法,编址到寄存器级
将外围设备接口中的有关寄存器作为一个主存单元,分配一个 地址。
(2) I/O指令设置方式 1) 设置专用的I/O指令 对于单独编址法,计算机的指令系统中必须设置专用的 I/O指令。 例 8086计算机中的 I/O指令: 输入指令格式: IN 寄存器号, 输入端口号
6
(2)扩展操作码指令(变长操作码指令)
不同的指令操作码的位数可以变化。
采用扩展操作码可以有效地压缩指令的平均长度, 适用于小型、微型计算机。
使用频度高的指令,采用较短的操作码,使用 频度低的指令,采用较长的操作码,使得指令系统 的操作码平均长度得到压缩。
7
例:某指令系统的指令字长16位,有三种指令格式:三地址、 二地址、一地址,每个地址码4位,采用扩展操作码表示的指令格 式如下:
23
第三部分 指令的功能和类型
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
r CISC计算机存在的主要问题 ¦仅有约20%的指令使用频度比较高,这些指令占据了 80%的CPU时间
大量不经常使用的指令导致计算机硬件非常复杂,使得计算 机研制周期变长,难以调试、维护且可靠性差。
Copyright ©2012 Computer Organization Group. All rights reserved.
Copyright ©2012 Computer Organization Group. All rights reserved.
r 指令由操作码和地址码组成 r 操作码字段指出指令的操作性质,即指令要完成的功能 r 地址码字段指出操作数的地址,即指令操作对象(或结果
r 地址
¦ 操作数或指令被存放在数据存储设备的位置编码 ¦ 主要数据存储设备有通用寄存器、主存储器和I/O设备 ¦ 地址可以被认为是一个无符号整数
r 数字
¦ 计算机处理的最基本操作数类型 ¦ 计算机中常用的数字类型有定点数、浮点数等
r 字符
¦ 在非数值计算领域表示和处理文本信息 ¦ 将字符数字化表示,比如ASCII码
Copyright ©2012 Computer Organization Group. All rights reserved.
Copyright ©2012 Computer Organization Group. All rights reserved.
Computer Organization
2020. 秋 西安交通大学 计算机科学与技术系
计算机组成原理课程组
Copyright ©2012 Computer Organization Group. All rights reserved.
r 程序控制指令 ¦无条件转移指令 ¦条件转移指令 ¦调用与返回指令 ¦陷阱指令
r 输人/输出(I/O)指令 r 其它指令
Copyright ©2012 Computer Organization Group. All rights reserved.
… …
… …
高位
低位
(a)低字节低地址 小端方式
高位
低位
(b)高字节低地址 大端方式
思考:高级语言程序定义的不同类型数据,如何在主存中存储和访问?
Copyright ©2012 Computer Organization Group. All rights reserved.
Copyright ©2012 Computer Organization Group. All rights reserved.
r 数据类型指面向应用或者软件系统所处理的各种数据结构 ¦基本数据类型:整数、实数、布尔数、字符等 ¦复杂数据类型:文件、图、表、树、阵列、队列、链 表、栈、向量等
编址方式是指主存单元的地址编排方式。编址方式决 定了主存最小访问单位。
r 按字编址方式 ¦主存的最小编址单位是一个字,通常,存储字长=机器 字长 ¦对主存数据的访问以字为单位 ¦主存容量=存储字数×存储字长,单位为字(Word) 或位(bit) eg. 128M ×32位
按字编址方式对应用来说不够灵活和方便,特别是在 非数值计算应用领域。
Copyright ©2012 Computer Organization Group. All rights reserved.Fra bibliotek 按字节编址方式
¦主存的最小编址单位是一个字节,描述主存储容量时 ,以字节(Byte,B)为单位。
¦对主存数据既能以字节为单位访问,也能以字为单位 访问。
Copyright ©2012 Computer Organization Group. All rights reserved.
指令系统经历了从简单到复杂,然后又从复杂到简
单的演变过程。
r 从简单到复杂 ¦50~60年代:电子管或 晶体管计算机 ²硬件结构比较简单 ²仅有十几至几十条基本指令,且寻址方式简单
边界对齐方式
2次存储器访问
规定了各种数据类 型存放的起始位置
边界不对齐方式
通常,按字节编址的机器硬件都支持边界不对齐方式,为了保证程序 执行速度,软件可以选择采用对齐或不对齐方式。
Copyright ©2012 Computer Organization Group. All rights reserved.
r 逻辑数
¦ n位二进制数的组合,但各位之间可以没有任何关系 ¦ 用于逻辑运算
Copyright ©2012 Computer Organization Group. All rights reserved.
计算机中主要的数据存储设备有通用寄存器、主存
Copyright ©2012 Computer Organization Group. All rights reserved.
Copyright ©2012 Computer Organization Group. All rights reserved.
r 完备性——功能需求 ¦CISC指令系统的主要特点 ¦RISC指令系统不强调完备性
r 规整性——硬、软件设计需求 ¦对称性:寻址方式 ¦匀齐性:数据类型 ¦一致性:指令格式和数据格式
r 高效性——性能需求 ¦CISC:完善指令系统功能,减小程序中指令的条数 ¦RISC:降低每条指令的执行时间
r 兼容性——性能需求
储器和 I/O 设备,它们各自都包含多个可编址的数据单 元。对这些单元可以统一编址或者单独编址。
主存 寄存器 I/O
寄存器 主存+ I/O 主存+ 寄存器+ I/O
三个地址空间
二个地址空间
一个地址空间
思考:不同地址空间对指令系统设计和硬件设计的影响?
Copyright ©2012 Computer Organization Group. All rights reserved.
)所在的位置,或者下一条指令在主存储器中的地址。
指令格式:
操作码
地址码
Copyright ©2012 Computer Organization Group. All rights reserved.
指令字长指一条指令中包含的二进制码位数。它取决 于操作码的长度、地址码的长度和地址码的个数。
r RISC计算机的特点 ¦优先选取使用频率较高的简单指令 ¦指令长度固定,指令格式种类少,寻址方式种类少 ¦只有取数/存数指令访问存储器 ¦CPU中通用寄存器数量相当多 ¦CPU采用流水线结构,大部分指令可以在一个时钟周 期内完成
¦控制单元设计以硬布线控制逻辑为主 ¦采用编译优化技术,以减少程序执行时间
r 确定操作数类型的原则 ¦有利于缩短程序的运行时间 ¦有利于减少CPU与主存储器之间的通信量 ¦数据表示应具有通用性和较高利用率
Copyright ©2012 Computer Organization Group. All rights reserved.
Copyright ©2012 Computer Organization Group. All rights reserved.
字地址
主存储器
0 字节3 字节字2单字元节1 字节0 4 字节7 字节字6单字元节5 字节4 8 字节11 字节字10单字元节9 字节8
字地址
主存储器
0 字节0 字节字1单字元节2 字节3 4 字节4 字节字5单字元节6 字节7 8 字节8 字节字9单字元节10 字节11
¦70年代末期:超大规模集成电路计算机 ²硬件成本下降,软件成本提高 ²指令系统更加复杂和完备,指令数目可达300~500 条,寻址方式也多样化
Copyright ©2012 Computer Organization Group. All rights reserved.
r 指令系统是指一台计算机所具有的全部机器指令的集 合,它反映了该机所拥有的基本功能。
r 指令系统是计算机硬件的语言系统,也被称为机器语言。
r 指令系统是软件和硬件的主要交界面,也是计算机软 件设计者和硬件设计者之间沟通的桥梁。
r 指令系统决定了机器硬件所具有的能力,也决定指令 的格式和机器的硬件结构。
¦当按字节访问主存时,使用字节地址;当按字访问主 存时,使用字地址(边界对齐)。
¦通常,机器字长是字节2n倍,字节地址是连续的,字地 址是不连续的。
¦多个字节数据存放在一个字单元,有两种编址顺序: 低字节低地址(小端方式)、高字节低地址(大端方 式);也有存放边界问题:边界对齐、边界不对齐。
¦60年代中期:集成电路计算机 ²硬件功耗、体积、价格下降,功能增强 ²指令数达100~200条,寻址方式多样化
Copyright ©2012 Computer Organization Group. All rights reserved.
¦60年代后期到70年代中期:半导体存储器出现 ²系列计算机诞生 ²新推出的机种指令系统包含旧机种的全部指令,旧 机种上运行的各种软件可以不加修改便可在新机种 上运行,即软件向后兼容
所谓操作类型就是把指令系统按功能进行分类。一般
指令系统包含 5 大类指令。
r 数据传送指令 r 数据运算指令
¦算术运算指令 ¦逻辑运算指令 ¦移位指令 ¦位操作指令
Copyright ©2012 Computer Organization Group. All rights reserved.
r 指令系统也直接影响到软件的结构、复杂度和性能。
r 指令系统的设计由体系结构设计者完成;指令系统的逻辑 实现是计算机组成的研究范畴。
Copyright ©2012 Computer Organization Group. All rights reserved.
大量不经常使用的指令导致计算机硬件非常复杂,使得计算 机研制周期变长,难以调试、维护且可靠性差。
Copyright ©2012 Computer Organization Group. All rights reserved.
Copyright ©2012 Computer Organization Group. All rights reserved.
r 指令由操作码和地址码组成 r 操作码字段指出指令的操作性质,即指令要完成的功能 r 地址码字段指出操作数的地址,即指令操作对象(或结果
r 地址
¦ 操作数或指令被存放在数据存储设备的位置编码 ¦ 主要数据存储设备有通用寄存器、主存储器和I/O设备 ¦ 地址可以被认为是一个无符号整数
r 数字
¦ 计算机处理的最基本操作数类型 ¦ 计算机中常用的数字类型有定点数、浮点数等
r 字符
¦ 在非数值计算领域表示和处理文本信息 ¦ 将字符数字化表示,比如ASCII码
Copyright ©2012 Computer Organization Group. All rights reserved.
Copyright ©2012 Computer Organization Group. All rights reserved.
Computer Organization
2020. 秋 西安交通大学 计算机科学与技术系
计算机组成原理课程组
Copyright ©2012 Computer Organization Group. All rights reserved.
r 程序控制指令 ¦无条件转移指令 ¦条件转移指令 ¦调用与返回指令 ¦陷阱指令
r 输人/输出(I/O)指令 r 其它指令
Copyright ©2012 Computer Organization Group. All rights reserved.
… …
… …
高位
低位
(a)低字节低地址 小端方式
高位
低位
(b)高字节低地址 大端方式
思考:高级语言程序定义的不同类型数据,如何在主存中存储和访问?
Copyright ©2012 Computer Organization Group. All rights reserved.
Copyright ©2012 Computer Organization Group. All rights reserved.
r 数据类型指面向应用或者软件系统所处理的各种数据结构 ¦基本数据类型:整数、实数、布尔数、字符等 ¦复杂数据类型:文件、图、表、树、阵列、队列、链 表、栈、向量等
编址方式是指主存单元的地址编排方式。编址方式决 定了主存最小访问单位。
r 按字编址方式 ¦主存的最小编址单位是一个字,通常,存储字长=机器 字长 ¦对主存数据的访问以字为单位 ¦主存容量=存储字数×存储字长,单位为字(Word) 或位(bit) eg. 128M ×32位
按字编址方式对应用来说不够灵活和方便,特别是在 非数值计算应用领域。
Copyright ©2012 Computer Organization Group. All rights reserved.Fra bibliotek 按字节编址方式
¦主存的最小编址单位是一个字节,描述主存储容量时 ,以字节(Byte,B)为单位。
¦对主存数据既能以字节为单位访问,也能以字为单位 访问。
Copyright ©2012 Computer Organization Group. All rights reserved.
指令系统经历了从简单到复杂,然后又从复杂到简
单的演变过程。
r 从简单到复杂 ¦50~60年代:电子管或 晶体管计算机 ²硬件结构比较简单 ²仅有十几至几十条基本指令,且寻址方式简单
边界对齐方式
2次存储器访问
规定了各种数据类 型存放的起始位置
边界不对齐方式
通常,按字节编址的机器硬件都支持边界不对齐方式,为了保证程序 执行速度,软件可以选择采用对齐或不对齐方式。
Copyright ©2012 Computer Organization Group. All rights reserved.
r 逻辑数
¦ n位二进制数的组合,但各位之间可以没有任何关系 ¦ 用于逻辑运算
Copyright ©2012 Computer Organization Group. All rights reserved.
计算机中主要的数据存储设备有通用寄存器、主存
Copyright ©2012 Computer Organization Group. All rights reserved.
Copyright ©2012 Computer Organization Group. All rights reserved.
r 完备性——功能需求 ¦CISC指令系统的主要特点 ¦RISC指令系统不强调完备性
r 规整性——硬、软件设计需求 ¦对称性:寻址方式 ¦匀齐性:数据类型 ¦一致性:指令格式和数据格式
r 高效性——性能需求 ¦CISC:完善指令系统功能,减小程序中指令的条数 ¦RISC:降低每条指令的执行时间
r 兼容性——性能需求
储器和 I/O 设备,它们各自都包含多个可编址的数据单 元。对这些单元可以统一编址或者单独编址。
主存 寄存器 I/O
寄存器 主存+ I/O 主存+ 寄存器+ I/O
三个地址空间
二个地址空间
一个地址空间
思考:不同地址空间对指令系统设计和硬件设计的影响?
Copyright ©2012 Computer Organization Group. All rights reserved.
)所在的位置,或者下一条指令在主存储器中的地址。
指令格式:
操作码
地址码
Copyright ©2012 Computer Organization Group. All rights reserved.
指令字长指一条指令中包含的二进制码位数。它取决 于操作码的长度、地址码的长度和地址码的个数。
r RISC计算机的特点 ¦优先选取使用频率较高的简单指令 ¦指令长度固定,指令格式种类少,寻址方式种类少 ¦只有取数/存数指令访问存储器 ¦CPU中通用寄存器数量相当多 ¦CPU采用流水线结构,大部分指令可以在一个时钟周 期内完成
¦控制单元设计以硬布线控制逻辑为主 ¦采用编译优化技术,以减少程序执行时间
r 确定操作数类型的原则 ¦有利于缩短程序的运行时间 ¦有利于减少CPU与主存储器之间的通信量 ¦数据表示应具有通用性和较高利用率
Copyright ©2012 Computer Organization Group. All rights reserved.
Copyright ©2012 Computer Organization Group. All rights reserved.
字地址
主存储器
0 字节3 字节字2单字元节1 字节0 4 字节7 字节字6单字元节5 字节4 8 字节11 字节字10单字元节9 字节8
字地址
主存储器
0 字节0 字节字1单字元节2 字节3 4 字节4 字节字5单字元节6 字节7 8 字节8 字节字9单字元节10 字节11
¦70年代末期:超大规模集成电路计算机 ²硬件成本下降,软件成本提高 ²指令系统更加复杂和完备,指令数目可达300~500 条,寻址方式也多样化
Copyright ©2012 Computer Organization Group. All rights reserved.
r 指令系统是指一台计算机所具有的全部机器指令的集 合,它反映了该机所拥有的基本功能。
r 指令系统是计算机硬件的语言系统,也被称为机器语言。
r 指令系统是软件和硬件的主要交界面,也是计算机软 件设计者和硬件设计者之间沟通的桥梁。
r 指令系统决定了机器硬件所具有的能力,也决定指令 的格式和机器的硬件结构。
¦当按字节访问主存时,使用字节地址;当按字访问主 存时,使用字地址(边界对齐)。
¦通常,机器字长是字节2n倍,字节地址是连续的,字地 址是不连续的。
¦多个字节数据存放在一个字单元,有两种编址顺序: 低字节低地址(小端方式)、高字节低地址(大端方 式);也有存放边界问题:边界对齐、边界不对齐。
¦60年代中期:集成电路计算机 ²硬件功耗、体积、价格下降,功能增强 ²指令数达100~200条,寻址方式多样化
Copyright ©2012 Computer Organization Group. All rights reserved.
¦60年代后期到70年代中期:半导体存储器出现 ²系列计算机诞生 ²新推出的机种指令系统包含旧机种的全部指令,旧 机种上运行的各种软件可以不加修改便可在新机种 上运行,即软件向后兼容
所谓操作类型就是把指令系统按功能进行分类。一般
指令系统包含 5 大类指令。
r 数据传送指令 r 数据运算指令
¦算术运算指令 ¦逻辑运算指令 ¦移位指令 ¦位操作指令
Copyright ©2012 Computer Organization Group. All rights reserved.
r 指令系统也直接影响到软件的结构、复杂度和性能。
r 指令系统的设计由体系结构设计者完成;指令系统的逻辑 实现是计算机组成的研究范畴。
Copyright ©2012 Computer Organization Group. All rights reserved.