《计算机系统要素》阅读总结及实现第五章——计算机体系结构

本文详细解读了冯·洛依曼计算机架构,包括内存分类(数据和指令)、中央处理器的组成部分(ALU、寄存器和控制单元),以及Hack平台作为16位计算机的具体实现,如CPU设计和内存结构。适合深入理解计算机硬件工作的读者。
摘要由CSDN通过智能技术生成

本系列为阅读《计算机系统要素》之后的总结,如有不准确或者错误的地方,欢迎指正。

个人建议,阅读完《Code–隐匿在计算机软硬件背后的语言》后,再阅读此书,效果更佳。

1、冯·洛依曼结构

本文的Hack计算机按照经典的冯洛依曼结构搭建:一个中央处理单元,中央处理单元内存进行交互,负责从输入设备接收数据,向输出设备发送数据。
在这里插入图片描述

图1 冯洛依曼体系结构

1.1 内存

  • 数据内存

数据抽象被翻译成机器语言后,变成一连串的二进制数,存储在计算机的数据内存中。通过指定的地址,在数据内存中找到相对应的内存单元,从而对该内存单元进行读操作或写操作。

  • 指令内存

高级指令被翻译成机器语言时,变成一系列的二进制字,这些字表示机器的指令,被存储在计算机的指令内存中。

1.2 中央处理器

  • 算术逻辑单元(Arithmetic-Logic Unit)

AlU负责执行计算机中所有底层的算术操作和逻辑操作

  • 寄存器

进行数据的快速存取
数据寄存器:短期记忆服务
寻址寄存器
程序计数寄存器:保存下一条要执行的指令的地址

  • 控制单元

对指令进行解码,解码后,向不同的硬件设备发送信号,指使它们执行指令;并且还负责决定下一步需要取出和执行的命令

2、Hack硬件平台

HACK平台是一台16位的计算机(16位指的是什么),包含一个CPU、两个独立的内存模块(指令内存和数据内存)、两个内存映像I/O设备

2.1 中央处理器 (Central Processing Unit,CPU)

Hack平台的CPU用来设计执行16位指令,HACK的CPU由四个部分组成:ALU、数据寄存器(D,仅存储数值)、地址寄存器(A,数值、ROM地址、RAM地址)、程序计数器。与两个相互独立的内存模块相连,一个是指令内存,一个是数据内存。
在这里插入图片描述

图2 中央处理器

2.1.1 指令解码

解析出16位指令的内容,分解为 “i xx a cccccc ddd jjj”,i表示指令类型,0代表A指令,1代表C指令,如果是C指令,那么进行计算。如果是A指令,就是地址指令。

2.1.2 指令执行

如果当前指令是地址指令(第一位是0),那么将A寄存器中的数值设置为地址指令中的15位常数;如果是计算指令,则指令中的各个数据是控制位,控制ALU和寄存器执行命令。

2.1.3

在执行当前指令的同时,CPU确定下一条地址,通过程序计数器的输出端发送该地址。

2.3 指令内存

HACK的指令内存是可以直接进行访问的只读内存设备,由32K可寻址的16位寄存器组成。
在这里插入图片描述

图3 指令内存

2.3 数据内存

在这里插入图片描述

图4 数据内存
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值