这个面包特别好吃 發表於 2020-12-18 15:09:00

汇编语言

<p>大学学了C吾言,java,R吾言等等,但是一直都不太满意,java太臃肿,资料太多,jar包也太多,C吾言还好。每门吾言都有他的优越性,没接触过汇编语言,所以就想认真看一遍,至于实验运用,暂时不会去做。这一篇随笔,会持续更新,都是简单笔记而已。</p>
<p>第一章 基础知识</p>
<p>1.1机器语言</p>
<p>1、计算机概念:</p>
<p>早期:可以执行机器指令,进行运算的机器。</p>
<p>现在:CPU和其他受CPU直接或者间接控制的芯片、器件、设备组成的计算机系统。</p>
<p>1、机器语言:每一种微处理器都有自己的机器指令集。---原因:硬件设计和内部结构不同。</p>
<p>总结:机器语言是由高低电平、硬件和处理器内部结构决定,而其代码由0和1组成。</p>
<p>早期纸带打孔:1打孔,0不打孔</p>
<p>1.2汇编语言的产生</p>
<p>(具体描述略,汇编初步解决了机器和人的交流关系,使交流更顺畅,但低层01电路设计依旧伟大,是地基)</p>
<p>举例:</p>
<p>操作:BX的内容送到AX中</p>
<p>机器指令:1000100111011000</p>
<p>汇编指令:mov ax,bx(对比C和java,有点类似于赋值写法,只是等号变成逗号)</p>
<p>汇编语言的编写工作过程:程序猿—》汇编指令—》编译器—》机器码—》计算机</p>
<p>对比c吾言:程序猿编辑c吾言代码—》编译器(词法分析、语法分析、语义检查、中间代码生成、代码优化、目标代码生成)—》链接—》运行</p>
<p>java语言本质也是如此,只不过在这个过程中,他们的编写方式、程序设计的区别,使得他们各有各的优点缺点。</p>
<p>1.3汇编语言的组成</p>
<p>三类指令组成:</p>
<p>汇编指令:机器码的助记符,有对应的机器码</p>
<p>伪指令:没有对应的机器码,由编译器执行,计算机并不执行。</p>
<p>其他符号:如+,-,*/等,由译码器识别,没有对应的机器码</p>
<p>汇编语言的核心:汇编指令,它决定了汇编语言的特性</p>
<p>总结:语言的发展从低级到高级的过程,可以想象未来中文,乃至任何一门吾言都将被计算机所读懂。</p>
<p>1.4存储器</p>
<p>内存—记忆</p>
<p>硬盘—内存—CPU</p>
<p>1.5指令和数据</p>
<p>指令和数据是运用上的概念。</p>
<p>当二者进入cpu时,cpu才赋予他们意义。</p>
<p>&nbsp;1.6存储单元</p>
<p>1bit,即一个二进制位。</p>
<p>8bit=1Byte(即一个字节)。</p>
<p>128个存储单元=128个Byte</p>
<p>128个存储单元=1024bit</p>
<p>1.7CPU对存储器的读写</p>
<p>CPU交互:</p>
<p>存储单元的地址(地址信息)。</p>
<p>器件的选择,读或写的命令(控制信息)。</p>
<p>读或写的数据(数据信息)</p>
<p>信号的传输:通过总线</p>
<p>总线分类:地址线,数据线,控制线</p>
<p>注意:8086CPU和8088CPU的区别。</p>
<p>机器码略,传送3号单元的内容入AX:</p>
<p>mov ax,</p>
<p>1.8地址总站</p>
<p>1根导线对应两种状态,10根导线,对应2的10次方种状态,即数据。最小数为0,最大数为1023。</p>
<p>地址总线的宽度即为总站的根数。</p>
<p>1.9数据总线</p>
<p>8根数据总线对应8位二进制数(即一个字节),16根数据总线对应两个字节。</p>
<p>注意:8088CPU的数据总线宽度为8,8086CPU数据总线的宽度为16。</p>
<p>例如:</p>
<p>8088CPU发送数据89D8时,需要两次,第一次发送D8,第二次发送89。</p>
<p>8086CPU则一次性发送完成。(原因上述注意处)</p>
<p>1.10控制总线</p>
<p>对部件的控制,总线决定对外部器件控制的种数,能力。</p>
<p>1.11内存地址空间</p>
<p>一个CPU地址总线宽度为10,那么可寻址1024个内存单元,这1024个寻到的内存单元就构成这个CPU的内存地址空间。</p>
<p>1.12主板</p>
<p>1.13接口卡</p>
<p>CPU控制接口卡,从而间接控制外设。</p>
<p>1.14各类存储器芯片</p>
<p>随机存储器(RAM)————主存储器</p>
<p>只读存储器(ROM)--------装有系统BIOS</p>
<p>显卡——RAM显卡,ROM(装有显卡BIOS)</p>
<p>网卡————装有网卡BIOS</p>
<p>1.15内存地址空间</p>
<p>汇编————内存地址空间</p>
<p>CPU将系统中各类存储器看作一个逻辑存储器。</p>
<p>总结:划分成多个地址空间,分配给各个部件,控制并使用。</p>
<p>注意,不同计算机系统的内存地址空间的分配情况是不同的。</p>
<p>8086PC机内存地址空间的分配基本情况:000000~9FFFF(主存储器地址空间【RAM】)、A0000~BFFFF(显卡地址空间)</p>
<p>C0000~FFFFF(各类ROM地址空间)</p>
<p>&nbsp;</p><br><br>
来源:https://www.cnblogs.com/ciscolee/p/14155045.html
頁: [1]
查看完整版本: 汇编语言