汇编语言学习笔记(二):寄存器(cpu工作原理)

汇编语言之寄存器总结       现在的电脑已经从以前的32位变为现在的64位,但是,CUP的老祖宗8086,我们依然不能忘记呀,所以趁着有时间今天就早期8086总结一下各种寄存器的相关属性。 早期的8086CUP总共有14个寄存器: 即 AX,BX,CX,DX,SP,BP,SI,DI,IP,FLAG,CS,DS,SS,ES 共 14 个。 大致可以分为三大... 阅读详情
CPU工作原理
CPU由运算器、控制器、寄存器等器件组成,这些器件靠内部总线相连
2.1通用寄存器
8086有14个寄存器(16位):AX,BX,CX,DX,SI,DI,SP,BP,IP,CS,SS,DS,ES,PSW
AX,BX,CX,DX称为通用寄存器,用来存放一般数据,为保证向下兼容,通用寄存器都可以分为两个独立的8位寄存器使用
例:AX:AH和AL(高低位)

2.2字在寄存器的存储(一个字两个字节)
2.3汇编指令:不区分大小写
mov AX,18 将18送入AX
add AX,18 将寄存器AX中的数值加上8
2.4物理地址
所有的内存单元构成的存储空间是一个一维的线性空间
16位:
运算器一次最多可以处理16位的数据
寄存器的最大宽度为16位(通用寄存器)
寄存器和运算器之间的通路是16位的
8086有20位地址总线,可传送20位地址,寻址能力为1M
8086内部为16位结构,只能传送16位的地址,表现出的寻址能力也只有64k;8086在内部用两个16位(段地址和偏移地址)合成一个20位:物理地址=段地址*16+偏移地址
2.5
2.6
2.7段(非常重要)
内存并没有分段,段的划分来自于CPU,由于8086CPU用于物理地址=段地址*16+偏移地址
1)一个段的起始地址一定是16的倍数
2)偏移地址为16位,16位地址的寻址能力为64k,所以一个段的最大长度为64k
2.9段寄存器
8086主要有四个段寄存器:CS ,DS,SS,ES
8086CPU要访问内存时,有这四个内存器提供内存单元的段地址
CS:为代码段寄存器(段地址)
IP:为指令指针寄存器(偏移地址寄存器)
CS和IP是8086中最关键的寄存器,他们指示了CPU当前要读取指令的地址
同时修改CS:IP中的内容:jmp 2AE3:3

2.12代码段
可以将长度为N<=64kb的一组代码,存在一组地址连续、起始地址为16的倍数的内存单元中,这段内存是用来存放代码的,从而定义了一个代码段。

debug命令
R:改变cpu寄存器的内容(r ax)
D:查看内存中的内容
E:命令改写内存中的内容
U:将内存中的机器指令翻译成汇编指令
T:执行一条机器指令
A:以汇编指令的格式在内存中写入一条机器指令

mov ax,1000H
MOV SS,AX
MOV SP,0010H
PUSH AX
PUSH BX
PUSH DS
【汇编语言】标志寄存器(一) —— 标志寄存器中的标志位:ZF、PF、SF、CF、OF 一网打尽 本文主要介绍了8086CPU中flag寄存器中的一些标志位以及它们的功能。 阅读详情

相关推荐

汇编语言——寄存器(CPU工作原理)

文章目录CPU概述寄存器字在寄存器中的存储几条汇编指令物理地址16位结构的CPU8086CPU给出物理地址的方法”段地址*16+偏移地址=物理地址”的本质含义段的概念段寄存器CS和IP修改CS、IP的指令同时修改CS、IP仅修改IP的内容代码段 CPU概述 ​ 一个典型的CPU由运算器、控制器、寄存器等器件组成,这些器件靠内部总线相连。简单的说在CPU中: 运算器进行信息处理 寄存器进行信息存储 控制器控制各种器件进行工作 内部总线连接各种器件,在他们之间进行数据的传送 内部总线和外部总线(地址总线、数

zhaoqingquanajax的博客 3697

汇编语言——寄存器(80&86)

汇编系列

Soleil_G的博客 1973

压电阀控制器设计-总章

本文章用于回顾记录本人制作压电阀控制器的关键技术,本人所制作压电阀控制器已经上市得到应用,特在此对一些关键技术进行回顾记录,欢迎从事压电控制及压电阀相关人员一起讨论

qq_42712859的博客 849

PWN任务(三)《汇编语言》第二章寄存器学习笔记

第二章主要以8086CPU的寄存器为例子进行介绍。 一. 16位寄存器(如AX)可分为两个独立的寄存器AH(存放高8位)和AL(存放低8位),对其中一个寄存器进行操作时要将其单独看待,比如AL溢出不会溢出到AH上。 16位寄存器与8位寄存器之间不能进行数据传送和运算 CPU通过地址总线送入存储器的必须是一个内存单元的物理地址。在CPU向地址总线上发出物理地址之前必须要在内部先形成这个物理地址。 二. 16位结构的CPU具有以下特性 (1)运算器一次最多可以处理16位的数据 (2)寄存器的最大宽度为16位

weixin_44120526的博客 324

新手避坑指南:手把手教你从零编写DC综合的.synopsys_dc.setup配置文件

本文详细介绍了如何从零开始编写DC综合的.synopsys_dc.setup配置文件,帮助新手避开常见误区。内容涵盖工艺库路径设置、核心参数详解、实用调试技巧以及高效配置模板,特别强调了配置文件在数字IC设计流程中的重要性。通过实战案例和常见报错解决方案,读者可以快速掌握DC综合配置的关键技能。

weixin_30517215的博客 296

用python自动复制粘贴excel表里某一列的数据到另一个表中

昨天接到人事小姐姐求助减轻复制粘贴的重复工作量,分享一下代码 半路新手上路 耶 把 2.xlsx 表里的第二列 的数据复制粘贴到 test.xlsx的第一列 python3.6.2 from openpyxl import Workbook from openpyxl import load_workbook from openpyxl.writer.excel import Exc...

weixin_33854644的博客 2万+

汇编语言 知识点梳理(王爽)

汇编语言(王爽) 第一章 基础知识 汇编语言的三类指令 (1)汇编指令:机器码的助记符,有对应的机器码 (2)伪指令:没有对应的机器码,由编译器执行,计算机不执行 (3)其它符号,如+,-,*,/等,由编译器识别,没有对应的机器码 指令和数据 在内存或磁盘上,指令和数据没有区别,都是二进制信息 总线 地址总线:一个CPU有N根地址总线,可以说、CPU的地址总线宽度是N,最多可以寻找2的N次方个内存单元 数据总线:宽度决定cpu与外界数据传送速度 控制总线:宽度决定cpu对外部器件的控制能力 第二

qq_52149232的博客 4426

【Python音频处理】syncstart 计算媒体文件同步时间偏移

syncstart是一个强大的工具,它简化了多媒体文件的音视频同步过程,特别适用于多设备录制的媒体内容。在使用命令行工具时,可以根据实际需求灵活调整参数,如归一化、降噪、低通滤波等,以提高同步的精度和效率。通过本文介绍的基本操作和应用示例,可以快速掌握syncstart的使用方法,并将其应用到日常的音视频处理工作中。

Mr数据杨 816

汇编语言:ARM工作模式和37个寄存器【ARM汇编系列--入门篇02】

索引:鼠标右键上拉可回来1、写在前面的话2、ARM的工作模式3、ARM的37个寄存器和功能01 寄存器数目分析02 寄存器功能分析01 CPSR程序状态和SPSR备份状态寄存器02 程序计数器PC(R15)03 R0~R704 R8~R1205 R13和R14 1、写在前面的话 这篇博客用来记录一下ARM中的基本汇编知识,主要讲讲ARM的工作模式和相关寄存器的使用等等,属于入门知识,是ARM汇编...

光年之外 1414

PS射击游戏射线检测优化:原理、工程与全链路高性能实现

射线池:减少GC,提升批量检测效率。分层检测:先粗后细,远距离射击高效判定。批量检测:并行处理,适合大量射线场景。空间结构:进一步加速大场景检测。下面继续深入射线检测优化,补充更多实用细节和进阶技巧,包括空间分区加速、射线检测多线程/异步化、射线合并与分帧、射线池通用模板、常见性能陷阱与调优建议等。对于极端性能需求,可自定义轻量级物理系统,仅检测关键对象(如玩家、子弹),跳过复杂物理引擎。结合AABB、OBB、球体等简单碰撞体,射线-包围体检测极快。空间分区+分层检测是大场景射线优化核心。

本博客聚焦游戏开发技巧、创业实战心得及大学热门课程干货。这里既有技术深度,也有思维广度,无论你是开发者、创业者还是高校学子,都能在这里找到适合自己的成长之路! 434

fast-lio系列改进版本

2.回环检测的优化结果,更新到FAST-LIO2的当前帧位姿中,幷进行ikdtree的重构,进而更新submap。其它的效果还不清楚,实测lio部分稳定性很好。用fast-lio_slam就很稳定。融合了fast-lio2和sc-pgo,两部分分开运行,SC-PGO从FAST-LIO2节点获取里程计和激光雷达点云主题。的作者kim在FAST-LIO2的基础上,添加SC-PGO模块,通过加入ScanContext全局描述子,进行回环修正,SC-PGO模块与FAST-LIO2解耦,非常方便,很优秀的工作。

z1872385的博客 3189

【汇编语言】寄存器(CPU工作原理)(五)—— 段寄存器以及CS和IP

【汇编语言】寄存器(CPU工作原理)(五)—— 段寄存器以及CS和IP

2301_80191662的博客 4461

交货单冲销发货过账的正确姿势:用 VL09 与 ABAP 批量反冲 Goods Issue

摘要 本文详细解析了SAP系统中VL09事务码的技术实现与业务应用。VL09用于反冲发货的货物移动,通过标准冲销路径(移动类型602冲销601)确保单据链路一致、状态机正确回退和业务规则生效。文章对比了经典VL09与Fiori应用在不同SAP产品形态中的位置,并针对STO场景提供了ME23N验证方法。核心内容包括WS_REVERSE_GOODS_ISSUE函数模块的调用要点、必须COMMIT的原因(SAP LUW机制),以及处理Handling Unit等限制条件的注意事项。最后给出了将VL09工程化的项目

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 590

【汇编语言】寄存器(CPU工作原理)(一)—— 寄存器的基础知识及存储

寄存器的基础知识以及字在寄存器中的存储

2301_80191662的博客 1729

C#上位机+YOLO入门:工业视觉检测最小demo(复制就能跑,附完整代码)

新手入门C#上位机+YOLO,最忌讳的是上来就追求“大而全”,结果卡在某个外围功能上,连核心逻辑都没搞懂。这个最小demo的目的就是让大家先掌握“图像预处理→模型推理→结果解析”的核心链路,后续再逐步添加工业场景的功能,这样学习效率会高很多。

这里只有干货:从 Modbus 通信到 MES 对接,从 YOLO 训练到工控机部署,带你搞定工业软件开发全流程。 726

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

【汇编语言】寄存器(CPU工作原理)(二)—— 汇编指令的基础操作

汇编指令的基础操作

2301_80191662的博客 1267

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

【汇编语言】寄存器(CPU工作原理)(六)—— 修改CS,IP的指令以及代码段

【汇编语言】寄存器(CPU工作原理)(六)—— 修改CS,IP的指令以及代码段

2301_80191662的博客 5580

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

【汇编语言】寄存器(内存访问)(七)—— CPU提供的栈机制

关于CPU提供的栈机制相关内容的探讨与学习,了解CPU是如何对栈进行访问和操作的

2301_80191662的博客 1712

汇编语言学习笔记(【汇编语言】小甲鱼零基础汇编)

汇编语言学习笔记(【汇编语言】小甲鱼零基础汇编) 目录 第〇章 课程资料 第一章 基础知识 第二章 寄存器(CPU工作原理) 第三章 寄存器(内存访问) 第四章 第一个程序 第五章 [BX]和loop指令 第六章 包含多个段的程序 第七章 更灵活定位内存地址 第八章 数据处理的两个基本问题 第九章 转移指令的原理 第十章 call和ret指令 第十一章 标志寄存器 第十二章 内中断 第十三章 int指令 第十四章 端口 第十五章 外中断 第十六章 直接定址表 第十七章 使用BIOS进入键盘输入和磁盘读写

inv1796915552的博客 3万+

[从零学习汇编语言] -寄存器详解

文章目录前言一、 存储器与通用寄存器1. 存储器2. 通用寄存器 前言 上一章我们曾简单的介绍过计算机中的一些硬件和软件的相关概念,还不熟悉的小伙伴可以点击下面的链接进行预习: [汇编语言] - 汇编语言基础知识梳理 一、 存储器与通用寄存器 1. 存储器 每一天清晨,当我们在梦中醒来的时候,记忆就会填充大脑的空白,我们会想起最近做过的一些重要的事情,当然也有些小的事情无法准确的记忆起,但这并不影响我们能够重新组织新一天的生活,保持生活的连续性。当然由于我们不能过于信赖我们的记忆,所以我们发明了书写,前

xiaoai1994的博客 9236

【汇编语言】寄存器(内存访问)(二)—— DS和[address]

【汇编语言】寄存器(内存访问)(二)—— DS和[address]

2301_80191662的博客 1814

汇编语言---基础+寄存器(CPU工作原理)

学习汇编语言是为了对计算机的工作原理和计算机操作系统有更深入的认识。日后能够站在计算机CPU的角度编写程序。 我学习汇编语言选用的教材是王爽老师的《汇编语言》。 下面总结一下这两天所学到的知识,也是复习计算机导论所学的知识。 机器语言与汇编语言 机器语言是比汇编语言更底层的语言,也就是计算机直接识别的01语言,机器语言是机器指令的集合。 机器语言由于只有0和1,记忆困难、书写困难、检查困难,设想...

qq_43769572的博客 1703

【汇编语言】寄存器(CPU工作原理)(七)—— 查看CPU和内存,用机器指令和汇编指令编程

基于实验内容,详细展示如何查看CPU和内存以及通过机器指令和汇编指令编程。

2301_80191662的博客 1843

汇编语言学习-二

汇编语言

z_o_z_o的博客 2051

【汇编语言】寄存器(内存访问)(四)—— mov、add、sub指令

【汇编语言】寄存器(内存访问)(四)—— mov、add、sub指令

2301_80191662的博客 1527

寄存器(cpu工作原理)

来源:王爽老师的《汇编语言》。 1、一个典型的CPU由运算器、控制器、寄存器等器件组成,这些器件靠内部总线相连。 区别: 内部总线实现CPU内部各个器件之间的联系。 外部总线实现CPU和主板上其它器件的联系。 8086CPU有14个寄存器 它们的名称为:    AX、BX、CX、DX、SI、DI、SP、BP、    IP、CS、SS、DS、ES、PSW

u012493828的专栏 4万+
上一篇: 汇编语言学习笔记(一):汇编语言基础知识
下一篇: linux安装svn服务器
阳小良
博客等级 码龄17年 54粉丝 155原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值