汇编语言的发展

这里写图片描述
汇编语言的特点:
可以直接访问,控制器各种硬件设备,比如存储器,CPU等,能最大限度地发挥硬件功能
汇编指令是机器指令的助记符,同机器指令一一对应.每一种CPU都有自己的机器指令集\汇编指令集,所以汇编语言不具备可移植性.
不区分大小写,比如mov和MOV是一样的
汇编语言 VS 高级语言
这里写图片描述
C++链接可执行文件要接入很多库,如标准输入输出库等,汇编直接调用显存,控制硬件

汇编语言的用途
这里写图片描述

弄清代码的本质
sizeof符号位是计算某个类型占多少个字节
++a + ++a + ++a
switch 和 if 的效率究竟谁高?为什么? 看那个执行指令条数少

汇编语言的种类
这里写图片描述

学汇编语言,要对CPU等硬件结构有一定的了解,因为不同的CPU对应的汇编指令是不一样的,因为CPU不一样那么机器指令就不一样,机器指令不一样也就是汇编指令不一样,汇编指令跟机器指令是一一对应的.
软件\程序的执行过程
这里写图片描述
软件就是由无数条机器指令组成的(C,OC,Swift),编写的代码都要转成机器指令(高级语言 -> 汇编语言 -> 机器语言),列如,要开发类似酷狗的软件,软件里面肯定有指令是操作音频设备的,操作麦克风,或者任何一个软件都有指令是操作屏幕的,,屏幕中要写东西,这些app装载到内存中是没有用的除非要有人执行它,这就是CPU,CPU就会从内存中读取软件中的每一条机器指令,CPU就知道你想干什么,然后CPU就控制计算机的其他设备如显示器,音响,话筒等其他设备
在学习汇编语言过程中,遇到的绝大部分指令都是跟CPU和内存有关

总线
这里写图片描述
这里写图片描述
地址总线用来寻址,寻找某个地址对应的存储空间,控制总线用来告诉是读还是写的命令,数据总线在CPU和内存间传递具体数据
这里写图片描述
总线是由一根根导线组成的,所以总线是有宽度的,宽度可以认为是有多少个导线,寻址能力指能找到多大的地址,导线只能传递电信号,一根导线只能传递1或者0,每一个导线传递的情况都是两种1或者0,所以三根导线可能传的有2*2*2种情况.
这里写图片描述
数据总线:8086总线宽度是16即16根导线传递16位的0或者1,8位是一个字节,所以单次最大传递2个字节的数据

在8086数据中89D8H是指89D8十六进制数据,一个十六进制位代表4个二进制位,8是4个二进制位9也是4个二进制位,所以89是一个字节,同理,D8也是一个字节,加起来就2个字节
这里写图片描述
8KB=因为2的10次方是1KB再乘以(2的3次方是8),所以是10+3 = 13
这里写图片描述

这里写图片描述
这里写图片描述

这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述

猜你喜欢

转载自blog.csdn.net/u012581760/article/details/80222000