《计算机组成与设计:硬件软件接口》第二章:指令集-阅读笔记

本文介绍了MIPS指令集的基本操作原理,包括算数运算、逻辑运算及数据传送指令的使用方式。探讨了寄存器与存储器之间的数据交互,以及不同指令格式的特点。

2.1总述

--1.所选指令集来自经典指令集MIPS

2.2计算机硬件的操作

        --毫无疑必须有执行基本算数运算的指令。------冯-诺依曼

指令:add a. b. c ---知道计算机将两个变量b和c相加,并把它们的和放在a中。

-每条MIPS算数运算指令仅仅执行一个操作,并且有且只有三个操作数。

例如:将b、c、d、e的值的和放在变量a中

--add a, b, c

--add a, a, d

--add a, a, e

硬件设计四基本原则的第一个原则:1.简单源自规整

两个基本算数运算的规则:

--加:add a, b, c

--减:sub a, b, c

2.3计算机硬件的操作数

与高级语言程序不同,算术运算指令的操作数是受限制的,它们必须直接取自寄存器;寄存器数量有限,内建于硬件的特殊位置。寄存器是计算机构成的基本元素:寄存器是硬件设计中最基本的元素,在计算机设计完成以后,对程序员来说仍然是可见的。MIPS系统结构中寄存器为32位;成组的32位数由于经常出现在MIPS系统结构中,所以专门有个名字,叫做字。

高级语言的变量和寄存器的主要区别是寄存器的数量有限。现在,典型的计算机中有32个寄存器。MIPS也有32个寄存器。

本节限制条件:MIPS算术运算指令的三个操作数必须从32个32位寄存器中选取。

设计原则2:越少越快

因为电信号传输距离越远,其传输时间就越长。因此,寄存器太多将会延长时钟周期。“越少越快”

的原则并不是绝对的;寄存器个数位31的机器,其速度不一定比寄存器个数为32的机器快。在这种情况下,设计者们必须在提供更多寄存器和缩短时钟周期之间权衡。MIPS约定:用一个“$”符后面跟两个字符来代表寄存器。现在,我们将使用$s0,$s1,$s2...来代表寄存器,以对应java和c程序中的变量;用$t0,$t1,$t2...来代表将程序编译为MIPS指令时所需的临时寄存器。

2.3.1 存储器操作数

        计算机怎样来表示和访问这样复杂的数据结构?

        回顾一下计算机的五个组成部分。处理器只能将少量数据保存在寄存器中,但存储器之间有上百万的数据单元。这样,像数

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值