【计组】《计算机组成与体系结构性能设计》William Stallings 第1部分 概述 第2章 计算机的演变和性能
博主:海底淤泥
关键字:
accumulator(AC) 累加器 Amdahl‘s law 阿姆达定律 arithmetic and logical unit(ALU) 算数逻辑单元 benchmark 基准程序
chip 芯片 data channel 数据通道 embedded system 嵌入式系统 execute cycle 执行周期
fetch cycle 取指周期 input-output 输入/输出 instruction buffer register(IBR) 指令缓冲寄存器 instruction cycle 指令周期
instruction register 指令寄存器 instruction set 指令集 integrated circuit(IC) 集成电路 main memory 主存储器
memory address register(MAR):存储器地址寄存器 microprocessor:微处理器 multicore:多核 multiplexor:多路选择器
opcode 操作码 original equipment manufacturer(OEM)原始设备制造商 program control unit 程序控制器 program counter(PC)程序计数器
SPEC 系统性能评估公司 stored program computer 存储程序试计算机 upward compatible 向上兼容 von Neumann machine 冯诺依曼机
wafer 晶片 word 字
思考题
1.什么是存储式计算机?
存储式概念计算机:程序能够以某种形式与数据一同存在存储器中,计算机可以通过在存储器中读取程序来获取指令,而且通过设置一部分存储器的值就可以编写和修改程序
2.任何通用计算机的4个主要部件是什么?
运算器、控制器、存储器、输入输出设备
3.对集成电路而言,计算机的三个基本组成部分是什么?
中央处理器、存储器芯片、总线接口芯片
4.解释摩尔定律
当价格不变时,集成电路上可容纳的元器件的数目,约每隔18-24个月便会增加一倍,性能也将提升一倍。
5.区分微处理器的关键特征是什么?
总线宽度:处理器能够一次同时输入或输出的数据位数
习题
2.1假设A=(1),A=(2),...A(1000)和B=B(1),B(2),...,B(1000)是两个向量(一维数组),每个向量包含1000个数,将他们加起来形成数组C,当I=1,2,...,1000,有 C(1)=A(I)+B(I)。试用IAS指令集编写一个程序来解决这个问题。忽略ISA只有1000个存储器的事实。
假设A数组存在地址1001-2000 B数组存在2001-3000 C数组存在3001-4000
地址: 指令: 执行后状态:
0 999
1 1
2 1000
3L LOAD M(2000) AC=M(2000)
3R ADD M(3000) AC=M(3000)+M(2000)
4L STOR M(4000) M(4000)=AC
4R LOAD M(0) AC=999
5L SUB M(1) AC=998
5R JUMP+ M(6,20:39) PC=6R
6L JUMP M(6,0:19) PC=6L
6R STOR M(0) M(0)=998
7L ADD M(1) AC=999
7R ADD M(2) AC=1999
8L STOR M(3,8:19) M(3L):LOAD M(1999)
8R ADD M(2) AC=2999
9L STOR M(3,28:39) M(3R):ADD M(2999)
9R ADD M(2) AC=3999
10L STOR M(3,8:19) M(4L):STOR M(3999)
10R JUMP M(3,0:19) PC=3L
2.2 (a)在IAS机上,取存储器地址2的内容的机器代码指令应是怎样的?
STOR M(2)
(b)为了完成这条指令,在指令周期内CPU需要访问多少次存储器?
取指周期:存储器取指令——1次
执行周期:存储器取数据进AC——1次
需要访问2次
博主:海底淤泥
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
2019-09-17 【C\C++笔记】数组指针越界