第2章 计算机和汇编语言

第2章 计算机和汇编语言

第2章重点介绍了寄存器(Register)、内存(Memory)和指令(Instruction)、指令集(Instruction set)、字节(Byte)等基本概念,然后引出了为什么要发明汇编语言(Assembly)。

一些知识点:

  • 寄存器(Register)就是01电路的封装,可以在通电情况下暂存数据。1个寄存器可以封装若干个01电路,比如16个、32个、64个,就是我们常说的16位、32位、64位。

看到有些地方也把寄存器称作暂存器,其实也是这个意思。

  • 多个寄存器和运算电路(ALU)就可以实现加减乘除运算。
  • 指令(Instruction)其实就是01开关的组合,通过01开关,指定机器要执行的操作。

image

  • 内存就是存储指令和数据的容器,计算机的运行就是从内存中取出指令、分析指令、运行指令。

计算机的内存是以字节为单位的,也就是说1个单位可以存储8个bit。一开始学习计算机的时候习惯最小比特,到内存时有点转不过来。

  • 内存是通过地址线进行寻址的,寻址空间大小是通过地址线的数量来决定的。

200x年那会,工作的电脑是4GB的内存,想着电脑内存太小了,于是又插了一根1GB的内存条,发现没用。后来才知道当时的CPU是奔腾系列,32位的,只能支持2^32=4GB的内存。太囧了。

  • 除了地址线,内存还有读写控制线和数据线:读写控制线用来控制从内存读还是写;数据线用来传输数值。
  • 指令指针寄存器存储的数值就是内存的地址,从这个地址执行指令,执行完这一条指令,跳转到下一条执行。从而可以实现自动执行预先编写好的程序(Program)。
  • 处理器(Processor)就是把寄存器(Register)、运算器(Arithmetic Logic Unit,ALU)、控制器(Control Unit, CU)集中在一起形成统一的部件,也称中央处理器(Central Processing Unit, CPU)。

处理器这个东西真的很神奇,能把这么多复杂的电子元器件安装在指甲盖大小的电路板上。B站经常看到CPU放大之后的图片,着实壮观。

截图

图片来源于:☢️放大64亿倍⚠️我用【MC】把芯片变成了城市⚡_哔哩哔哩_bilibili

  • 计算机能执行的都是01的数据,如果用01来编程会崩溃,所以就有了汇编,通过mov、add这样容易记的指令来替代二进制指令。既然用了助记符来方便编程,自然要有编译器把这些助记符翻译成处理器可以执行的01代码了。

从01编程到汇编、再到C语言、Java、Python等,如果说汇编解决了01的烦恼,那么C语言就是解决了和硬件设备打交道的烦恼,Java或其他语言解决了内存回收的烦恼等等。不得不感叹大佬们的智慧。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

晴空闲雲

感谢家人们的投喂

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值