1.2计算机发展简史
1.2.4计算机性能指标
- 总线宽度
- 存储器容量
- 存储器带宽
- 主频/时钟周期
- 吞吐量
- 响应时间
- 处理机字长
CPU执行时间=CPU时钟周期数*CPU时钟周期长
CPI表示每条指令周期数=执行某段程序所需的CPU时钟周期数/该程序的指令条数
1.3计算机的硬件组成
1.3.1计算机基本组成
- 控制器
- 运算器
- 存储器
- 输入设备
- 输出设备
求补器的源码阵列乘法器
X=-15,y=-13
[x]补=10001,[y]补=10011
符号位单独考虑
算前求补|x|=1111,|y|=1101
1111
X 1101
---------------------------
1111
0000
1111
1111
11000011
算后求补输出为11000011符号运算1⊕1=0
所以[xXy]补=011000011 [x×y]原=011000011
补码的二进制数真值是:x·y=0×28+1×27+1×26+1×21+1×20=(+195)10
十进制乘法验证-15×-13=+195
MAR地址寄存器,MDR数据缓存寄存器,IR指令寄存器,PC程序计数器
浮点运算步骤如下:
1. 0 操作数检查;
2. 比较阶码并完成对阶(小阶向大阶对齐);
3. 尾数求和运算;
4. 结果规格化;
5. 舍入处理。
设x=2010×0.11011011,y=-2100×0.10101100, 求x+y 。
1、0操作数检查(非0)
2、对阶:阶码对齐后才能加减。规则是阶码小的向阶码大的数对齐;
若△E=0,表示两数阶码相等,即Ex=Ey;
若△E>0,表示Ex>Ey;
若△E<0,表示Ex<Ey。
当Ex≠Ey 时,要通过尾数的移动以改变Ex或Ey,使之相等。
[x]浮=00010, 0.11011011; [y]浮=00100, 1.01010100
阶差=[Ex]补-[Ey]补=00010-00100=11110
即阶差为-2,Mx右移两位,Ex加2。
[x]浮=00100, 0.00110110(11)
3、尾数相加
0. 0 0 1 1 0 1 1 0 (11)
+ 1. 0 1 0 1 0 1 0 0
————————————————
1. 1 0 0 0 1 0 1 0 (11)
4、结果规格化
规则:尾数右移1位,阶码加1,尾数左移1位,阶码减1。
左规处理,结果为1.00010101(10),阶码为00011
5.舍入处理(对阶和向右规格化时)
就近舍入(0舍1入):类似”四舍五入”,丢弃的最高位为1,进1
朝0舍入:截尾
朝+∞舍入:正数多余位不全为”0”,进1;负数,截尾
朝-∞ 舍入:负数多余位不全为”0”,进1;正数,截尾
采用0舍1入法处理,得到1.00010110。
溢出判断和处理
阶码上溢,一般将其认为是+∞和-∞ 。
阶码下溢,则数值为0。
阶码符号位为00,不溢出。得最终结果为
x+y = 2011×(-0.11101010)
浮点格式:N=RE.M R是基数,M是尾数,E指数
Cache三种1.全相联 2.直接映射 3.组相联
存储器扩展:存储容量格式字-位
1*4-4*8
寻址方式:
冲突:数据冲突,资源冲突,控制冲突
数据冲突是在数据运算结束前被取出来进行运算
资源冲突是在同一个周期,同一个器件被两条指令同时使用
控制冲突流水线中的转移指令或其他改写PC指令造成的冲突。
总线传输三种方式:串行,并行,分时
仲裁方式
集中仲裁(集中仲裁器):1.链式仲裁,2.计数器仲裁,3.请求仲裁
分布式仲裁(每个设备自带一个小仲裁器,小仲裁器会把自己的仲裁号发到总 线上,留 下最大的 那个仲裁号,然后设备自己进行比对,一样的仲裁号响应)
磁盘读写原理:磁表面存储,写操作将磁盘磁化即为1,读用切割磁感线产生电流的方法
磁盘的分类:可移动磁头固定盘片,固定磁头磁盘机,温切斯特磁盘机
磁盘组有6片磁盘,每片有两个记录面,最上最下两个面不用。存储区域内径22cm,外径33cm,道密度为40道/cm,内层位密度400位/cm,转速6000转/分。问:
- 共有多少柱面?
有效存储区域=16.5-11=5.5(cm),因为道密度=40道/cm,所以40×5.5=220道,即220个圆柱面。
- 盘组总存储容量是多少?
内层磁道周长为2πR=2×3.14×11=69.08(cm)
每道信息量=400位/cm×69.08cm=27632位=3454B
每面信息量=3454B×220=759880B
盘组总容量=759880B×10=7598800B
- 数据传输率多少?
磁盘数据传输率Dr=rN
N为每条磁道容量,N=3454B
r为磁盘转速,r=6000转/60秒=100转/秒
Dr=rN=100×3454B=345400B/s
(4)访问时间
访问时间=找到时间+等待时间(找到时间会给,等待时间是转速分之1)
程序查询方式
在主程序流中抽出一部分不相邻的时间调用查询子程序,若子程序准备好则先进行子程序,若所有子程序都没准备好就继续主程序流
程序中断
中断(Interrupt)是指CPU暂时中止现行程序,转去处理随机发生的紧急事件,处理完后自动返回原程序的功能和技术。
响应中断时机:外界中断请求时随机的,但CPU只有在当前指令执行完毕后,才转至公操作
断点保护问题(PC,寄存器内容和状态的保存)
中断需要CPU全程参与,当CPU当前指令完成后才会响应中断
如果多个中断申请同时发出,响应更靠近CPU,层数更高的,但是同层中断不会打断同层中断
DMA直接存储器访问(Direct Memory Address)DMA方式是为了在主存储器与I/O设备间高速交换批量数据而设置的。
但是他依旧会影响CPU
他主要是CPU先预设好后再执行
通道的功能:执行通道指令,组织外围设备和内存进行数据传输,按I/O指令要求启动外围设备,向CPU报告中断等,具体有以下五项任务:
(1)接受CPU的I/O指令,按指令要求与指定的外围设备进行通信。
(2)从内存选取属于该通道程序的通道指令,经译码后向设备控制器和设备发送各种命令。
(3)组织外围设备和内存之间进行数据传送,并根据需要提供数据缓存的空间,以及提供数据存入内存的地址和传送的数据量。
(4)从外围设备得到设备的状态信息,形成并保存通道本身的状态信息,根据要求将这些状态信息送到内存的指定单元,供CPU使用。
(5)将外围设备的中断请求和通道本身的中断请求,按次序及时报告CPU。
相当于一个副CPU处理,只会极少的占用CPU