【汇编】汇编语言基础知识(学习笔记)

一、汇编语言概述

汇编语言是直接在硬件之上工作的编程语言,首先要了解硬件奈统的结构,才能有效的应用汇编语言对其编程。

二、汇编语言的产生

机器语言:机器语言是机器指令的集合

汇编语言的主体是汇编指令

汇编指令和机器指令的差别在于指令的表示方法上。汇编指令是机器指令便于记忆的书写格式。(汇编指令是机器指令的助记符)

机器指令:1000100111011000

操作:寄存器BX的内容送到AX中

汇编指令:MOV AS,BX

寄存器:CPU中可以存储数据的器件,一个CPU中可以有多个寄存器

三、汇编语言的组成

1、汇编指令(机器码的助记符)

2、伪指令(由编译器执行)

3、其它符号(由编译器识别)

汇编语言的核心是汇编指令,它决定了汇编语言的特性。

四、存储器

CPU 是计算机的核心部件,它控制整个计算机的运作并进行运算。但要想让CPU 工作,就必须向它提供指令和数据。

指令和数据在存储器(内存)中存放

磁盘不同于内存,磁盘上的数据或程序如果不读到内存中,就无法被CPU使用

五、指令和数据

指令和数据是应用上的概念

在内存和磁盘上,指令和数据没有任何区别,都是二进制信息。

六、存储单元

存储器被划分为若干个存储单元,每个存储单元从0开始顺序编号

七、CPU对存储器的读写

CPU要想进行数据的读写,必须和外部器件(标准的说法是芯片)进行三类信息的交互

1、存储单元的地址(地址信息)

2、器件的选择,读成写命令(控制信息)

3、读或写的数据(数据信息〕

在计算机中专门有连接CPU和其他芯片的导线,通常称为总线

1、地址总线 -- 传输待操作的地址

2、数据总线 -- 传输待操作的数据

3、控制总线 -- 传输待操作的行为

指令和数据没有任何区别,都是二进制信息 --> 通过不同的总线传输来区分是指令还是数据

八、地址总线

CPU是通过地址总线来指定存储单元的

地址总线上能传送多少个不同的信息,CPU就可以对多少个存储单元进行寻址

一个CPU有N根地址总线,则可以说这个CPU的地址总线的宽度为N。最多可以寻找2的N次方个内存单元。

地址总线的宽度决定了CPU的寻址能力

九、数据总线

CPU与内存或其它器件之间的数据传送是通过数据总线来进行的

数据总线的宽度决定了CPU和外界的数据传输速度。

数据总线的宽度决定了CPU与其它器件进行数据传送时的一次数据传送量

十、控制总线

CPU对外部器件的控制是通过控制总线来进行的。在这里控制总线是个总称,控制总线是一些不同控制线的集合。

有多少根控制总线,就意味着CPU提供了对外部器件的多少种控制。

控制总线宽度决定了CPU对系统中其它器件的控制能力

十一、内存地址空间

对CPU来讲,系统中的所有存储器中的存储单元都处于一个统一的逻辑存储器中,它的容量受CPU寻址能力的限制。这个逻辑存储即是我们所说的内存地址空间。

不同的计算机系统的内存地址空间分配情况是不同的。若一个CPU的地址线宽度为10,那么可以寻址1024个内存单元,这1024个可寻到1024个内存单元。

存储器在物理上是独立的器件,但是它们在以下两点上相同:

1、都和CPU的总线相连。

2、CPU对它们进行读或写的时候都通过控制线发出内存读写命令。

最终运行程序的是CPU,我们用汇编编程的时候,必须要从CPU角度考虑问题(我们学习这门课程的核心思维)

十二、主板

在每一台pC机中,都有一个主板,主板上有核心器件和一些主要器件。

这些器件通过总线(地址总线、数据总线、控制总线)相连。

十三、接口卡

计算机系统中,所有可用程序控制其互作的设备,必须受到CPU的控制。

CPU对外部设备不能直接控制,如显示器、音箱、打印机等。直接控制这些设备进行互作的是插在扩屈插槽上的接口卡

十四、存储器芯片

从读写属性上看分为两类:随机存储器(RAM)和只读存储器 (ROM)

装有BIOS的ROM

BIOS : Basic Input/Output System,基本输入输出系统

BIOS是由主板和各类接口卡厂商提供的软件系统,可以通过它利用该硬件设备进行最基本的输入输出。在主板和某些接口卡上插有存储相应BIOS的ROM。

从功能和连接上分类:随机存储器RAM、装有BIOS的ROM、接口卡上的RAM

相关推荐
William_Edmund5 分钟前
Python 语言学习——应用1.2 数字图像处理(第二节,变换)
人工智能·学习·计算机视觉
weixin_514548891 小时前
机器学习课程学习周报十五
人工智能·学习·机器学习
Themberfue1 小时前
基础算法之双指针--Java实现(下)--LeetCode题解:有效三角形的个数-查找总价格为目标值的两个商品-三数之和-四数之和
java·开发语言·学习·算法·leetcode·双指针
AIGC破防黑吗喽1 小时前
Midjourney零基础学习
人工智能·gpt·学习·ai·stable diffusion·midjourney·ai绘画
冬风诉1 小时前
汇编内存寻址
汇编
Eternal-Student1 小时前
预处理、编译、汇编、链接
linux·汇编·windows
LearnTech_1231 小时前
【学习笔记】手写一个简单的 Spring MVC
笔记·学习·spring·spring mvc
一尘之中2 小时前
网 络 安 全
网络·人工智能·学习·安全
TNT_JQR2 小时前
电子信息类专业技术学习及比赛路线总结(大一到大三)
单片机·嵌入式硬件·学习
漏刻有时2 小时前
微信小程序学习实录9:掌握wx.chooseMedia实现多图片文件上传功能(选择图片、预览图片、上传图片)
学习·微信小程序·notepad++