汇编基础知识

汇编语言8086CPU之寄存器总结 寄存器是什么呢? 其实很简单,寄存器就是个存储信息的单元或者说是器件又或者说是容器而已,就比如内存也是一个存储介质或者说是存储单元而已,其实寄存器从理解上来说和内存差不多,只不过寄存器(这里讨论的寄存器都是 CPU 中的寄存器,不包括外设上的寄存器)位于 CPU 内部,而内存位于 CPU 外部,而且,寄存器比内存可是珍贵得多啊,就拿内存和硬盘来比,肯定是内存在使用上珍贵得多,是 PC 中的稀有资源,而寄存器是 CPU 中的稀有资源,内存和寄存器相比就像硬盘和内存相比一样 。 而对于一个汇编程序员来说,C 阅读详情

1.SI和DI

功能和bx相似,只是不能分成2个8寄存器使用。


2INC ax指令

将寄存器的内容加1

mov ax,0

inc ax

执行完毕ax=1


3.bx,si,di,bp寄存器

CPU的核心是寄存器,学习汇编这么一段时间,我也深刻体会到对寄存器理解的重要性

(1)在8086CPU中,只有这4个寄存器可以在[...]中来进行内存单元的寻址。比如下面指令是正确的。

mov ax,[bx]

mov ax,[bx+si]

mov ax,[bp]

mov ax,[bp+si]

mov ax,[bp+di]

而下面的指令是错误的:

mov ax,[cx]

mov ax,[ax]

mov ax,[dx]

mov ax,[ds]

(2)在[...]中,这4个寄存器可以单个出现,或者只能以四中组合出现:bx和si、bx和di、bp和si、bp和di

比如下面的指令是错误的:

mov ax,[bx+bp]

mov ax,[si+di]


(3)只要在[...]中使用寄存器bp,而指令中没有显性给出段地址,段地址就默认在ss中,比如:

mov ax,[bp] 含义:(ax)=((ss)*16+(bp))

mov ax,[bp+idata] 含义:(ax)=((ss)*16+(bp)+idata)

4.存放段地址的寄存器也可以显示给出,比如:

mov ax,ds:[bp]

mov ax,es:[bx]


5.指令要处理的数据有多长?

8086CPU的指令,可以处理俩种尺寸的数据,byte和word。所以在机器指令中要指明,指令进行的是字操作还是字节操作。对于这个问题,汇编语言如下处理:

(1)通过寄存器指明

mov ax,1

mov bx,ds:[0]

上面都是word

mov al,1

mov al,bl

上面都是byte

(2)在没有寄存器的情况下,用操作符X ptr指明内存单元长度,X可以是word或者byte

mov word ptr ds:[0],1

inc word ptr [bx]

inc word ptr [bx],2

x86 汇编的基础知识 x86 汇编器编程 基于x86 实现编译器首先得了解x86 平台的指令调度, 以下是一些我在实现编译器过程中用到的基础知识! 大部分内容参考了 青木的自制编译器, 基于GNU汇编器 c语言使用gcc 编译, 而gcc 编译器将c代码转化为汇编之后, 也是用的GNU as 的汇编器将汇编语言 .s 转化为.o,然后再连接, 因此如果自制编译器, 也是做到汇编这一步, 所以又得学x86 汇编器的使用方... 阅读详情

相关推荐

STM32涉及到的汇编基础知识

本文为使用汇编开发STM32系列文章之一,全部文章目录点此跳转。 目录一、说明二、系列文章跳转链接1.stm32涉及到的汇编基础知识 一、说明   【2313213】   本文将作为此系列文章的目录,此后会专门编写一个系列,将全程使用汇编代码开发STM32,旨在深入理解汇编的使用和STM32的运行机制等原理,但一般并不适用在工程中使用。   本文默认读者具有一定的汇编基础和STM32的编程经验,否则阅读本系列文章将会很有难度或并不适合您当前阶段阅读。当然在之后的文章中,所使用到的相关知识也会做相应的解释。

超级网吧的博客 6878

8086CPU寻址方式详解

寻址方式 定义 寻址方式:求操作数所在地或者所在存储器地址单元的方式。 指令中的操作数,大多数都在存储器单元当中,也可以在寄存器里面,也可以是在指令中立即给出的常数。我们把求得它们的方式称为寻址方式。 类型 寻址方式按求得的操作数的目的不同,可以分为两类: 数据用 程序要实现转移的地址用 如果要实现段内转移,就需要求得段内偏移地址给IP用,如果要实现段间转移,除了偏移地址外,还需要求得目的地的段地址给CS用。要计算的数据的所在存储地址怎么得到,或者转移的地址内容的所在存储地址怎么得到,就需要用以一种寻址

Polaris的博客 5761

汽车电子电气架构演进:从分布式ECU到域集中与中央计算

汽车电子电气架构(EEA)是整车电子系统的顶层设计框架,定义了计算、通信、供电等核心要素的组织方式。其演进遵循从分布式到集中式的技术路径,旨在解决传统架构下ECU数量膨胀带来的成本、复杂度和协同难题。通过域控制器(DCU)整合功能域,以及向中央计算+区域控制架构发展,实现了硬件资源池化、软硬件解耦与高速通信。这一变革的核心技术价值在于提升算力利用率、简化线束布局、支持软件定义汽车(SDV)与持续OTA升级。在智能电动汽车时代,新架构为智能座舱、自动驾驶等复杂应用提供了可扩展的平台基础,推动了汽车产业从硬件导

weixin_30326741的博客 383

8086寻址方式和指令系统

#一、8086寻址方式汇总 ##1、

hjc的博客 1661

斯坦福HumanPlus机器人核心技术解析:从HST强化学习框架到HIT模仿学习的实现路径

本文深入解析了斯坦福HumanPlus人形机器人的核心技术实现路径。其核心在于HST强化学习框架与HIT模仿学习架构的协同:HST作为“小脑”,通过rsl_rl框架在仿真中训练稳健的低级运动控制;HIT作为“大脑”,基于改进的Transformer架构学习高级任务规划。文章详细拆解了从算法原理、代码实现到硬件部署的全流程,为复现这一前沿机器人系统提供了实战指南。

weixin_29082143的博客 281

TI DSP TMS320F280025 Note1:工程模板Template创建

该方法新建的工程支持寄存器开发,同时也支持库函数开发,新建后移动该工程也不需要重新修改路径,路径使用变量定义,使用方便、移植性能高

weixin_52849254的博客 2302

【汇编笔记——8086/8088的寻址方式】

一、数据寻址方式 1、立即数寻址方式 主要特征:操作数是立即数 优缺点 1、优点:不需要访问存储器,执行速度快 2、缺点:立即数不能修改,通用性差 用途:主要用于给寄存器或存储单元赋初值 举例 MOV AX,0A7FH ;执行后,AH=0AH,AL=7FH ...

_闪闪发光的博客 8530

详细解释SigLIP的原理,为什么有些多模态模型喜欢用他?怎么应用于机器人控制呢

详细解释SigLIP的原理,为什么有些多模态模型喜欢用他?怎么应用于机器人控制呢。

具身机器人和通用AI 1228

8086CPU有哪些寄存器组成?各有什么用途?标志寄存器的各标志位在什么情况下置位?

8086CPU有哪些寄存器组成?各有什么用途?标志寄存器的各标志位在什么情况下置位?

m0_62810691的博客 6358

用 SAP-ABAP-1 把 ABAP 代码理解这件事交给 AI:从遗留代码到 ABAP Cloud 的开发加速器

SAP-ABAP-1是SAP推出的首个专用ABAP基础模型,专注于理解和解释ABAP代码,帮助开发者更快迁移和维护遗留系统。它强调ABAP Cloud合规编码实践,通过SAP AI Foundation提供访问,主要能力包括代码解释、业务语义理解和框架约束分析。相比通用模型,它能更好处理ABAP特有的版本差异、权限控制和扩展边界等问题。该模型可集成到多种开发环境中,支持文件化开发体验,并能与SAP Joule等工具协同工作,为ABAP团队提供智能辅助。

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

Go语言面试:面试中经常被问到的50个经典面试题(附参考答案)

Go语言核心知识点摘要 基础语法与数据结构 make和new区别:new分配零值内存返回指针,make初始化引用类型返回实例 Slice底层:包含指针、长度、容量的结构体,多个slice可共享底层数组 nil与空slice:nil指针为nil,空slice指针非nil但JSON编码不同 Map原理:哈希表实现,非线程安全,扩容策略影响性能 for range注意:循环变量是拷贝,map遍历无序 defer执行:LIFO顺序,函数返回前执行 Struct比较:仅当所有字段可比较时才可比较 参数传递:只有值传递

数据知道的博客 4720

汇编之基础知识

汇编语言笔记整理 1.基础知识 机器语言: 机器指令的集合,机器指令就是一台机器可以正确执行的命令,由一列二进制数字组成(物理上实质是高低电平)。 汇编语言产生原因: 在8086CPU完成运算:s=768+12288-1280,机器码如下: 101110000000000000000011 000001010000000000110000 001011010000000000000101 ​ 如果其中出现一位错误,很难发现,书写和阅读机器码程序很复杂,为了解决机器语言带来的麻烦,使用汇编语言。 ​ 汇编语言

qq_41813030的博客 1611

STM32 IIC温湿度传感器(STH45)实验

精度 ΔRH = ±1.0 %RH, ΔT = ±0.1 °C• 平均电流:0.4 μA,空闲电流:80 nA• I2C FM、CRC 校验和、乘法。I2C 地址。• 专利保护选项 [1]、PTFE 膜和可拆卸保护盖• 工作范围:0 …100 %相对湿度,−40…125 摄氏度• 在冷凝环境中功能齐全• 动力加热器,真正的NIST可追溯性• JEDEC JESD47 认证 • 符合 ISO 17025 : 2017 的传感器专用校准证书,3 点温度校准。

baidu_34971492的博客 3072

【汇编】基础知识

qq_44244120的博客 182

ABAP Channels 实战:在 ABAP 7.40 中用 WebSocket 打造实时双向通信

本文详细介绍了SAP ABAP 7.40引入的ABAP Channels通信框架,包含AMC(ABAP Messaging Channels)和APC(ABAP Push Channels)两部分。AMC作为应用服务器内部的消息总线,支持发布/订阅模式,可实现跨会话实时通信;APC基于WebSocket协议,用于浏览器等客户端与ABAP服务器的双向实时交互。文章通过一个乒乓球游戏案例展示了ABAP Channels的实时协作能力,并详细解析了AMC的配置方法、消息发送与接收的代码实现,帮助开发者理解如何利用

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

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

《ARM汇编与逆向工程 蓝狐卷 基础知识》

本文主要介绍了《ARM汇编与逆向工程 蓝狐卷 基础知识》,希望能对学习汇编和逆向的的同学们有所帮助。 文章目录 1. 前言 2. 内容简介 3. 作者简介 4. 译者简介 5. 目录

weixin_43178406的博客 2万+

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

汇编语言 | 基础知识

汇编语言是计算机提供给用户的最快最有效的语言,也是能够利用计算机的所有硬件特性并能够直接控制硬件的唯一语言。但是由于编写和调试汇编语言程序要比高级语言复杂,因此目前其应用不如高级语言广泛。通过汇编语言的学习,可以具有在 CPU 的寄存器级上进行控制和操作的能力,获得直接对计算机硬件底层编程经验,从而对计算机系统有更深刻的认识。

尼泊罗河伯的博客 1万+

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

[安全]基础知识(汇编)

基础知识 寄存器 其他基础知识推荐

ShirleyPaul_SmallWorld 526

【8086汇编】基础知识篇

​   汇编语言是很多相关课程(如数据结构、操作系统、微机原理等)的重要基础。其实仅从课程关系的角度讨论汇编语言的重要性未免片面,概括地说,如果你想从事计算机科学方面的工作的话,汇编语言的基础是必不可缺的。原因很简单,我们的工作平台、研究对象都是机器,汇编语言是人和计算机沟通的最直接的方式,它描述了机器最终所要执行的指令序列。想深入研究英国文化,不会英语行吗?

qq_65596720的博客 5654

汇编基础知识入门

学习汇编前你应该知道的知识 1、汇编需要什么工具和程序,到哪里下载? 目前阶段,汇编程序仅需要两个程序就够了。masm.exe,link.exe。 前者是编译程序,后者是链接程序。另外,为了验证和调试程序,还需要一个程序debug.exe,该程序由windows本身就提供。 将二者下载后,放到某一个目录中(任意目录都可以),考虑到很多命令需要通过键盘敲入,所以建议你不要把文件放入到长文件名目录、中文目录或很深的目录中。比如你可以建一个“D:\Masm”目录,并建议此后的程序都放这个目录,此后称这个目录为汇编

Python关于jieba函数的用法 5250

【汇编语言】基础知识

汇编语言基础知识机器语言汇编语言的产生寄存器计算机执行用汇编指令写的程序的过程汇编语言的组成存储器指令和数据 基础知识 汇编语言是直接在硬件之上工作的编程语言,首先要了解硬件系统的结构,才能有效地应用汇编语言对其编程。 汇编的研究重点放在如何利用硬件系统的编程结构和指令集有效灵活地控制系统进行工作。 对于IA-32架构平台(就是因特尔的32位机器)而言,选用的是32位80386汇编语言。 实际分析中我们要知道研究的程序是运行在什么平台上,可以选择相应的汇编语言,对应IA-32架构而言,IA-16架构的汇编语

weixin_45844670的博客 515
上一篇: [bx]和loop指令
下一篇: 汇编转移指令的原理
OS技术解密
博客等级 码龄16年 3760粉丝 189原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值