macOS上的汇编入门(三)——硬件基础

在上一篇文章中,我们讲了关于进制、补码和逻辑运算的数学基础。在这篇文章中,我们主要讨论的是硬件基础。由于汇编语言实际上是底层硬件的一个抽象,因此,我并不想太多地涉及底层硬件,只想大致讲一下硬盘-内存-CPU的这个三级结构。但这里要指出的是,实际上硬件层面远不止这么简单,还有一二三级缓存等复杂的结构。

CPU、内存与硬盘

打开我们的Mac的系统信息,我们可以看到处理器和内存型号:

处理器和内存型号

在磁盘工具中,我们也可以看到硬盘的型号:

硬盘

处理器(即CPU)、内存和硬盘,这三者究竟有什么关系呢?

通过一个简单的计算我们可以知道,一块硬盘的大小为251GB, 那么一共有251,000,000,000个存储单元,也就是约10的11次方个存储单元;一块内存的大小为8GB, 那么一共有8,000,000,000个存储单元,也就是约10的9次方个存储单元;而一块Intel Core i5的CPU,由于采用x86-64架构,因此一共有16个通用寄存器。

因此,一块硬盘的存储容量是一块内存的100倍,是一个CPU的10,000,000,000倍!

那么,我们为什么要有这样的区分呢?能不能整个电脑的存储全用CPU的寄存器来做呢?答案是:理论上能,但实际上人类科技水平达不到,而且即使做出来也太贵了。我们从一个只有CPU,存储全靠寄存器的电脑入手,看如何能降低科技要求,削减开支。

CPU的功能是什么?是将寄存器中存储的值放到各种运算单元中进行处理。那么,我们在运行一个程序的时候,可能这个程序会有数以千计个变量,但是,在一段时间内参与运算的变量的个数却是非常少的,许多变量在参与运算后的很长一段时间内都不会再次参与

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值