汇编基础知识

CPU:一种可以执行机器指令进行运算的芯片(微处理器)。

存储器(内存):存放CPU可以工作的指令和数据(指令和数据都是二进制信息)。  磁盘不同于内存,磁盘中的数据要读到内存中才能被CPU使用          

磁盘>>内存>>CPU

存储器分若干存储单元,并从0开始按顺序编号(一个存储器有128个存储单元,编号0~128)

电子计算机最小信息单位是bit(比特),即一个二进制位。

8个bit(8个二进制位)组成一个字节(Byte)。

大容量存储器计量容量的单位(磁盘单位也一样):

1KB=1024B

1MB=1024KB 

1GB=1024MB 

1TB=1024GB

机器指令就是一台机器可以正确执行的命令。(电子计算机的机器指令是一列二进制数字0、1)

主板:上面有核心器件和主要器件,还有拓展插槽(上面一般有RAM内存条和各类接口卡)他们通过总线相连

接口卡:CPU对外部设备(显示器、音响、打印机等)不能直接控制,插在扩展插槽上的接口卡才能直接控制,CPU又可以通过总线直接控制接口卡,达到根据CPU间接命令控制外设进行工作的目的  (很长一大段总结下来的)

二进制数字>高低电平>驱动计算机电子器件>进行运算

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

汇编指令是机器指令便于记忆的书写格式。(用于编写源程序)

操作:寄存器BX的内容送到AX中(其中一个寄存器的代号,即另一个寄存器)

机器指令:1000100111011000

汇编指令: mov ax,bx

(汇编语言写出)源程序 >> 汇编编译器(编译为) >> 机器码(计算机可执行)

因为存储器被划分成多个存储单元并编号,可将编号视为地址,方便CPU从指定地址中读取数据

CPU要想进行数据的读写,必须和芯片进行3类信息交互:

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

(2)器件的选择,读或写的命令

(3)读或写的数据(数据选择)

如图

我将其通俗的理解为   1找、2回、3去

专门连接CPU和其他芯片的导线:总线(逻辑上分为 地址总线、控制总线、数据总线)

即 “”一找地址线、二回数据线、三去控制线”,这样感觉方便理解一点

写、读操作的步骤都一样。

地址总线

一根导线只能传送 高电平 或 低电平 两种稳定状态,二进制表示 0 或 1.

10根导线可传送10位二进制数据;10位二进制数据可表示2**10(2的10次方)个不同的数据(最小0,最大1023)

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

如10根地址线的CPU向内存发出地址信息11时 10根地址线上传送的二进制信息为:

数据总线

数据总线:CPU与内存或其他器件之间进行数据传输的介质,其宽度(根数)决定CPU与外界的数据传输速度。

如8根数据总线一次可传送一个8位2二进制数(即一字节)

8088CPU(总线宽为8)的数据传输情况为:

8086CPU(总线宽16)的数据传输情况:

控制总线

CPU可通过控制总线(是一些不同控制线的集合)对外部器件进行控制。有多少根控制总线就意味着CPU对外部的控制有多少种。(越多控制能力越强,包括读或写命令)

总之,

汇编指令是机器指令的助记符,他们一 一对应。

每一种CPU都有自己的汇编指令集

CPU可以直接使用的信息存放在存储器中

存储器中指令和数据没有任何区别(都是二进制信息)

最终运行程序的是CPU,用汇编语言编程的时候,必须要从CPU的角度考虑问题。

对于CPU来讲,系统中所有 存储器 中的 存储单元 都处于一个统一的 逻辑存储器 中,它的容量受CPU 寻址能力 的限制(这句话或许要在后期的学习中逐渐体会)

汇编语言的组成

(1)汇编指令(核心,其决定了汇编语言的特性):机器码的助记符,有对应的机器码

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

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/35043.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

1536数字三角形

1536数字三角形 ⭐️难度:中等 🌟考点:动态规划 📖 📚 import java.util.Arrays; import java.util.LinkedList; import java.util.Queue; import java.util.Scanner;public class Main {public static void main(…

基于VMware的虚拟机集群搭建

本文作者: slience_me 文章目录 基于VMware的虚拟机集群搭建1. 安装Vmware2. 构建虚拟机3. 安装Linux4. 网络配置5. 开始克隆6. 初始化系统6.1 开放root账户6.2 SSH服务6.3 设置静态IP6.4 镜像源 host 主机名 基于VMware的虚拟机集群搭建 该集群采用镜像ubuntu-20.0…

windows平台搭建python环境

python语言 Python 是一种高级、解释型、跨平台的编程语言,由Guido van Rossum于1991年设计,并发展成为全球最受欢迎的编程语言之一。它以简单易读的语法、灵活的特性和丰富的标准库闻名,适合初学者和经验丰富的开发者。 Python 支持多种编…

【系统架构设计师】操作系统 - 文件管理 ② ( 位示图 | 空闲区域 管理 | 位号 | 字号 )

文章目录 一、空闲区域 管理1、空闲区域分配2、空闲区域 管理方式 简介 二、位示图 简介1、位示图 表示2、位示图 字号3、位示图 位号4、位示图 中 比特位 分组管理 三、位示图 考点1、计算磁盘 位示图 的大小2、位示图 位置计算 一、空闲区域 管理 1、空闲区域分配 在 索引文件…

SpringData Redis:RedisTemplate配置与数据操作

文章目录 引言一、Redis概述与环境准备二、RedisTemplate基础配置三、连接属性配置四、操作String类型数据五、操作Hash类型数据六、操作List类型数据七、操作Set类型数据八、操作ZSet类型数据九、事务与管道操作总结 引言 Redis作为高性能的NoSQL数据库,在分布式系…

串口烧录出现频繁回复乱码 频繁回复一个数字且烧录失败 字节混乱

这是因为你的芯片没有处于系统存储区启动一直未进入bootloader 解决办法是检查boot引脚接正确没,要在系统存储器启动

共享经济再中介化进程中的技术创新与模式重构研究——以“开源AI智能名片链动2+1模式S2B2C商城小程序“为例

摘要 本文基于共享经济中介化演进的双重逻辑,通过案例研究与技术解构,探讨"开源AI智能名片链动21分销机制S2B2C商城小程序"集成系统如何重构数字经济时代的价值网络。研究发现,该技术生态通过三维需求匹配、动态价值分配与智能风险…

【linux】虚拟机执行sudo yum isntall perl报错 could not retrieve mirrorlist htt:

项目场景: 提示:虚拟机安装拓展包,sudo yum install perl Virtualbox 在不安装增强功能扩展的情况下, 无法自适应分辨率和共享剪切板等操作 问题描述 原因分析: 提示:这里填写问题的分析: 出现这个错误是因…

网络编程知识预备阶段

1. OSI七层模型 OSI(Open System Interconnect)七层模型是一种将计算机网络通信协议划分为七个不同层次的标准化框架。每一层都负责不同的功能,从物理连接到应用程序的处理。这种模型有助于不同的系统之间进行通信时,更好地理解和…

我的Gitee

算法与数据结构: 浙海大小趴菜的一些记录 后续也会更新一些项目,小趴菜以后也会变得很厉害

Collection合集(单列集合)

Collection代表单列集合,每个元素(数据)只包含一个值。Collection实际上是一个泛型接口 Collection集合常用API: 代码实现: Collection集合遍历 遍历方式一:迭代器 迭代器是用来遍历集合的专用方式&#…

旅游类小程序界面设计

产品概述 艾啦游是一款互联网旅游类小程序,致力于国内精品旅游,以及拥有自由行、专属热榜单、出行攻略等诸多功能,汇聚了许多国内的人气景点,与诸多城市的酒店也保持合作,打造一体式旅行服务,更有不断上新…

移动端开发基础与常见布局

一、移动端基础 1.浏览器现状 ⑴.PC端常见浏览器 360浏览器、谷歌浏览器、火狐浏览器、QQ浏览 器、百度浏览器、搜狗浏览器、IE浏览器。 ⑵.移动端常见浏览器 UC浏览器,QQ浏览器,欧朋浏览器, 百度手机浏览器,360安全浏览器&am…

[算法] 贪心--矩阵消除游戏

文章目录 1. 题意2. 思路贪心思路1思路1并不正确思路1为什么是错误的?这道题该如何求解?枚举思路是超时的!枚举 贪心 3. 编码 今天咱们来分享一道基础的贪心题目 -> 矩阵消除游戏 对于贪心算法的题目, 我感觉是对于初学者没必要太注重证明过程, 因为这玩意的变数比较大, …

数学——A. K-divisible Sum + D. Exam in MAC

A. K-divisible Sum 题目: 思路: 以下 “[xxx]” 符号均代表向上取整 我们假设总和是sum,那么就有sum k * cnt 要想最大值最小,肯定是要让sum尽可能小,这样每个元素都能变小 最小情况是 sum 恰好等于 n 时&#…

Docker 》》Docker Compose 》》network 网络 compose

docker 默认的网络 三种模式 # 列出所有当前主机上或Swarm集群上的网络 docker network ls#查看网络详情 docker network inspect network名称# 清除未使用的docker网络 docker network prune -f# 创建网络 ocker network create -d bridge 网络名称 docker network create –s…

RabbitMQ延迟消息

文章目录 延迟消息死信交换机延迟消息延迟消息应用场景 延迟消息 生产者在发送消息的时候指定一个时间,消费者不会立即收到该消息,而是在指定时间之后才收到消息,这就是延迟消息。 比如说这么一个场景,用户下单后将商品库存进行…

phpstudy+phpstorm+xdebug【学习笔记】

配置PHPStudy 配置PHPSTORM phpstorm选择PHP版本 配置DEBUG 设置服务器 编辑配置 学习参考链接::https://blog.csdn.net/m0_60571842/article/details/133246064

58.Harmonyos NEXT 图片预览组件架构设计与实现原理

温馨提示:本篇博客的详细代码已发布到 git : https://gitcode.com/nutpi/HarmonyosNext 可以下载运行哦! Harmonyos NEXT 图片预览组件架构设计与实现原理 文章目录 Harmonyos NEXT 图片预览组件架构设计与实现原理效果预览一、组件架构概述1. 核心组件层…

Android 手机启动过程

梳理 为了梳理思路,笔者画了一幅关于 Android 手机启动的过程图片内容纯属个人见解,如有错误,欢迎各位指正