王爽老师的汇编语言教程是公认比较经典的汇编教程,我学汇编找过好多教程但是真的有的教程越看越晕,绕来饶去就是不讲重点,汇编真的不难,汇编的那几十个命令和巨大API函数怎么比,就是硬件理论复杂点,把它的知识点精炼的浓缩到一起,便于大家现抓住汇编重点,从繁复庞大的书本内容里提炼出精华,先印在心里,这样学汇编就有相对简单点了,大家共同努力把这门基础而又最高深的语言学好 ### 汇编语言知识点详解——基于王爽教程 #### 一、基础知识 **1. 汇编指令与机器指令** - **定义**: 汇编指令是机器指令的助记符,与机器指令一一对应。每个处理器都有特定的汇编指令集。 **2. 指令类型** - **汇编指令**: 机器码的助记符,拥有对应的机器码。 - **伪指令**: 没有对应的机器码,由编译器执行而非计算机直接执行。 - **其他符号**: 如+、-、*、/等运算符,由编译器识别,并无对应的机器码。 **3. 存储器概念** - **信息存储**: CPU可以直接使用的信息存储于存储器中。 - **指令与数据**: 在存储器中,指令和数据并无区别,均为二进制信息。 - **存储单元编号**: 存储单元从零开始顺序编号。 - **位与字节**: 一个存储单元存储8个bit(即1B)。 **4. 存储单位** - 1B = 8b - 1KB = 1024B - 1MB = 1024KB - 1GB = 1024MB - 1TB = 1024GB **5. CPU管脚与总线** - **地址总线**: 决定了CPU的寻址能力。 - **数据总线**: 决定了CPU与其他器件进行数据传送时的一次数据传送量。 - **控制总线**: 决定了CPU对系统中其他器件的控制能力。 #### 二、主板与器件 **1. 主板结构** - **核心器件**: 包括CPU、存储器、外围芯片组等。 - **扩展插槽**: 通常用于插入RAM内存条和其他接口卡。 **2. 外设控制** - **接口卡**: CPU通过总线向接口卡发送命令,接口卡根据命令控制外部设备进行工作。 **3. 存储器分类** - **随机存储器(RAM)**: 可读可写,关机后数据丢失。 - **只读存储器(ROM)**: 只能读取不可写入,关机后数据不丢失。 **4. 存储器功能** - **主随机存储器**: 由主板上的RAM和扩展插槽上的RAM组成,用于存储大部分程序和数据。 - **BIOS ROM**: 包含基本输入输出系统,用于硬件的基本操作。 - **接口卡上的RAM**: 如显卡上的RAM(显存),用于暂存大量输入输出数据。 **5. 内存地址空间** - **逻辑存储器**: 对CPU而言,系统中所有存储器构成一个统一的逻辑存储空间,容量受限于CPU的寻址能力。 #### 三、寄存器与CPU工作原理 **1. 寄存器概述** - **物理地址**: 所有内存单元构成的线性空间中的唯一地址,由CPU通过地址总线指定。 - **8086CPU**: 具有20位地址总线,支持1MB的寻址能力。 - **地址合成**: 物理地址 = 段地址 × 16 + 偏移地址。 **2. 段寄存器** - **段地址**: 在8086CPU的段寄存器中存放,共4个段寄存器,包括指令段寄存器CS。 - **CS**: 用于存放指令的段地址。 - **IP**: 用于存放指令的偏移地址。 **3. CPU工作流程** 1. **读取指令**: 从CS:IP指向的内存单元读取指令至指令缓冲器。 2. **更新IP**: IP指向下一指令位置。 3. **执行指令**: 重复上述步骤。 **4. 指令控制** - **转移指令**: 修改CS和IP的内容以改变指令执行流程。 #### 四、内存访问与数据传输 **1. 字的存储** - **字存储**: 字在内存中占用两个连续地址单元,低位字节存放在低地址单元,高位字节存放在高地址单元。 **2. 数据传送** - **MOV指令**: 访问内存单元时,默认从DS寄存器获取段地址。 - **操作数**: MOV、ADD、SUB指令有两个操作数,JMP指令有一个操作数。 **3. 栈操作** - **栈顶**: SS和SP寄存器存放栈顶的段地址和偏移地址。 - **入栈/出栈**: PUSH和POP指令根据SS:SP提示的地址,按栈的方式访问内存单元。 王爽老师的汇编语言教程不仅系统地介绍了汇编语言的基础知识,还深入浅出地讲解了CPU的内部工作原理、内存访问机制以及寄存器的作用。通过这些知识点的学习,能够帮助读者更好地理解和掌握汇编语言的核心概念和技术细节。
剩余24页未读,继续阅读
- 粉丝: 13
- 资源: 16
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- (源码)基于Spring Boot和Vue的后台管理系统.zip
- 用于将 Power BI 嵌入到您的应用中的 JavaScript 库 查看文档网站和 Wiki 了解更多信息 .zip
- (源码)基于Arduino、Python和Web技术的太阳能监控数据管理系统.zip
- (源码)基于Arduino的CAN总线传感器与执行器通信系统.zip
- (源码)基于C++的智能电力系统通信协议实现.zip
- 用于 Java 的 JSON-RPC.zip
- 用 JavaScript 重新实现计算机科学.zip
- (源码)基于PythonOpenCVYOLOv5DeepSort的猕猴桃自动计数系统.zip
- 用 JavaScript 编写的贪吃蛇游戏 .zip
- (源码)基于ASP.NET Core的美术课程管理系统.zip