学习了王爽老师的《汇编语言》觉得自己应该把知识串一串。
首先CPU只能识别机器语言(01010101010),由于对人类非常不友好,所以汇编语言就产生了。
于是在产生汇编后,计算机是不会明白汇编语言的,所以我们又要一个翻译员,那就是编译器。就这样,汇编语言也能完成机器语言的工作。
发展到现在,汇编由三类指令完成:
汇编指令,机器码的助记词,有对应的机器码
伪指令,没有对应的机器码,由编译器执行
其他符号,+ - * / 也是编译器识别,没有对应的机器码
要让CPU工作,那么就要数据 和指令,现在指令有了,数据就要从内存中获得,所以我想大概 汇编就是控制CPU和内存。
内存被分为一个个的内存单元,一个内存单元是一个字节,一个字节有8位。每个内存单元都有一个编号,就类似于一个一排房子,都有一个门牌号。这些内存单元就是房子,8位就是房子的面积
CPU必须要和其他的器件进行3类信息交互,第一个是存储单元的地址(控制信息),第二个是器件的选择,读和写的命令(控制信息),读和写的数据(数据信息)
这里我这么理解,比说我要去吃饺子,然后首先要知道饺子(快餐店这个应该就是期间)这个店的地址,然后我要和老板或者服务员说我要一份饺子(这是一命令),然后老板或服务员给我饺子(这是一个数据)。
这三步是通过地址线,控制线,和数据线完成的。地址线用来选择地址,地址线越宽那么能找到的地址就越多,就类似于我有个本子,本子页数越多,我能记录的地址肯定也越多,一条线可以记录两种信息,那么N条线就能记录2^N条信息。
数据线和控制线一样,线越多,能办的事情就越多,数据线是用来传输数据的,那么线越多,能同时传输的数据也越多,就类似于一个门,门小在一个时间就只能进出一个,门大就能进出多个。
控制总线用来对器件的控制,这个控制线不太一样,控制线都是专线转做的,比如说发送数据这个指令肯定是由发送数据这条控制线来做,所以CPU有多少根控制线,CPU就有多少种控制。(应该是这样,不对后面再改)
现在知道 CPU是通过三条逻辑线 分别是地址总线,控制总线,和数据总线,来寻址,发送命令,读写数据,汇编就是命令,内存就是数据的仓库,给CPU读写,CPU就类似一个机器人。
这些线就是在一个主板上,主板也上也有核心的器件和主要的器件,CPU就这样和他们相连。
存储器有随机存储器RAM,也有只读存储器ROM
随机存储器可读可写,但是带电存储,ROM不能写只能读,但是一直都保存
计算机会把所有的储存器都当一条内存来看待,把用编号范围来区分不同器件的空间,比如说1-1001是内存的段,你在里面写数据读数据就是内存的,1002-2000是显卡内存段,那么读取内存就是显卡的。