机器语言

        机器语言是机器指令的集合,计算机的机器指令是一列二进制数字,计算机将之转化为一系列的高低电平,然后使得计算机可以进行运算;早期的机器指令是有0和1组成的,它的执行时是通过读取在纸带上的打孔(1)或不打孔(0)完成的,由于一个字符需要N个0和1组成,所以即使完成一个很小的功能也是一件相当费力的事情。

        所以机器指令有许多缺点

            1,由于是有0和1组成,所以指令难记

            2、指令的长度和复杂度使得指令容易书写错误

            3、如果出错,往往无法检查,必须的重新编写

            4、编写的指令难以读懂

汇编指令

        由于机器指令的这些缺点,所以汇编指令就应用而生了,说白了汇编指令是对机器指令的包装,它将多个0、1组成的指令包装成了一个个字符或者字符串,这样的好处是

            1、指令便于记忆

            2、指令便于检查

            3、指令的可读性好

            4、容易书写   

举例如:

    机器指令1000100111011000表示把寄存器Bx的内容送到AX中,汇编则写陈mov ax,bx,这样便于记忆和书写      

机器指令与汇编指令的转换问题?

    汇编指令固然比机器指令好,但是机器是个傻子它只认0、1 其他一概不认,所以我们不得不想办法将这些汇编指令转换成机器指令,然后在让机器读取,执行,就如外国人不懂中文,得一个翻译帮他一样,这里汇编指令也需要一个翻译,我们称之为编译器,我们将我们的汇编指令交给编译器,编译器负责翻译我们的指令给机器,这样机器就自然可以懂得我们的需求

汇编指令不是汇编语言

    汇编指令是汇编语言核心,它决定了汇编语言的特性,它是汇编语言的组成部分

    汇编语言由三部分组成

            1、汇编指令

            2、伪指令:没有对应的机器码,由编译器执行,计算机不执行

            3、其他符合:+,-,*,/等,由编译器识别,没有对应的机器码

存储器

    cpu是计算机的核心部件,相当于计算机的大脑,要想让他思考得给它提供指令和数据,而指令和数据是存放在存储器中的,所以cpu的工作就是读取内存中的数据和指令然后执行,所以他们的

                信息传递速度+cpu处理的速度=计算机运算的速度(性能)

存储器中有多个存储位置(存储单元)

    每个单元从0开始顺序编号,例如一个存储器128个存储单元,编号就是0-127(计算机中的位置标记,一般都是从0开始的,这估计是外国人的习惯,中国人习惯从1开始,所以经常不注意此细节)

        前面说过计算机指令都是0,1组成的,所以存储的信息也都是0,1;而一个存储单元能存储8个bit(1或者0),组成byte(字节),那么128个存储单元就可以存储128字节的信息(这里提个细节,8bit不代表8个状态,因为每一位都有两个状态,所以它的状态是个全排列组合,2的8次方个不同状态)

这里提一下存储单位的置换

        1byte=8bit,1kb=1024byte,1MB=1024KB.1GB=1024MB

cpu如何读取内存中的数据和指令

    cpu要从内存中读取数据,就得确定数据和指令在内存中的位置,只要这个位置确定了,那么这个位置上的数据和指令自然可以确定。

举个例子

CPU要完成一项任务,它需要小伙伴的帮忙,现在他站在楼下,得打电话问清楚小伙伴的住址(楼层+房号)一个存储器就是一层楼房,这层楼房有128个房间,每个房间都有一个房门号,而一栋楼并不只有一层,它可能有多层,所以它的房间自然可以有N*128个。所以我们要让CPU这个家伙找到与它合作的小伙伴,就得确定他的小伙伴住几层,几号房,这就是cpu寻址过程

最后他得告诉小伙伴所要做的事情串门和邀请(写、读)

        cpu读写过程中与内存的交互

            1、存储单元的地址-----------地址线

            2、读取数据      -----------数据线

            3、控制信息(读、写)-------控制总线

地址总线

        CPU是通过地址总线来指定存储单元的位置的,地址总线的个数决定了存储单元的个数,如果地址总线有10根,那么他可以表示的存储单元的个数就是2的10次方个地址单元

数据总线

        顾名思义,数据总线就是传递数据的线路,数据总线的个数决定了CPU和外界数据传递的速度,8根数据总线一次可以传递8位二进制,16个数据总线可以传16位二进制数

控制总线

        控制总线的个数决定了CPU对外的部件有多少种控制,它决定了CPU控制的能力

逻辑地址

地址总线的多少,决定了计算机的逻辑内存地址的大小,所谓逻辑地址我理解的是“它相当于将计算机中的各种存储单元进行统一编号,然后组成的这组新的地址编号(逻辑地址),这样cpu就只需通过逻辑地址就可以进行访问各个存储单元,而不是先确定存储单元的类型(主存储器,显存等),然后再确定地址;简单的说就是将两步合成了一步,比较方便,快捷

、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、

附件中有图片,可以用来加深记忆、

、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、