当前位置: 首页 > news >正文

8086汇编常见寄存器与指令

本文为学习书籍《汇编语言(第4版)》后的小结。

1、寄存器

序号寄存器描述
1ax运算寄存器
2bx地址寄存器,偏移地址
3cx计数寄存器,loop的结束条件,jcxz的跳转条件
4dx运算寄存器
5cs段地址,指令执行段地址
6ss段地址,栈的段地址
7ds段地址,数据的段地址
8es段地址,extra,扩展的段地址寄存器
9ip偏移地址,instruction,指令偏移地址
10sp偏移地址,stack pointer,栈偏移地址
11si偏移地址,source,源
12di偏移地址,destination,目的
13bp偏移地址,base pointer,基地址
14标记寄存器位代表标记,见标记位列表

2、指令

指令

类型

指令说明

add、adc加法,adc为带进位的加法
sub、sbb减法,sbb为带进位的减法
mul

乘法:
-8位乘法:一个放在al,另一个放在8位reg或内存字节单元中,

                结果16位,存放在ax中;
-16位乘法:一个放在ax,另一个放在16位reg或内存字单元中,

                结果32位,高位放在dx中,低位放在ax中。

div除法:
8位除法:被除数16位,放在ax中,结果al中存商,ah中存余数;
16位除法:被除数32位,dx存高16位,ax存低16位,结果ax存商,dx存余数
andand al,00111011B
oror al,00111011B
shl和shr逻辑左移与右移, 用0补位
inc自增1
dec自减1

mov
movsb

rep movsb 循环(cx)个字符的传送。
将ds:[si]地址的内容拷贝到es:[di],如果df=0(cld),si和di自增;

df=1(std),si和di自减

movswmovsw 一个拷贝1个字(两个字节,32位),每次完成si和di +2或-2
rep与movsb或movsw搭配使用
push、pop
pushf、popfpush flag、pop flag
dupdb 16 dup (0) 将此块内容设置为16个为0的字节
dw 16 dup (0) .....16个为0的字(2个字节)
dd 16 dup (0) .....16个为0的双字(4个字节)

jmp
jcxzcx==zero跳转

je、jb、ja、

jnb、jna、jne

与cmp搭配
loopcx==0结束循环
call与retip寄存器会push和pop
int中断 与 iretint:
(1)取中断类型码n;
(2)标志寄存器入栈;
(3)IF=0,TF=0;
(4)CS入栈,IP入栈;
(5)修改CS和IP至n号中断码对应的地址
iret:
(1)pop IP
(2)pop CS
(3)popf

cld、std与movsb或movsw搭配使用:
cld,将df设置为0,则si和di自增(或+2);
std,将df设置为1,则si和di自减(或-2);
cli、stisti,设置IF=1,在中断处理程序中可处理可屏蔽中断;
cli,设置IF=0,在进入中断处理程序后,进制其他的可屏蔽中断。
nop占位,和offset搭配,通常用来计算某段代码的长度

相关文章:

8086汇编常见寄存器与指令

本文为学习书籍《汇编语言(第4版)》后的小结。 1、寄存器 序号寄存器描述1ax运算寄存器2bx地址寄存器,偏移地址3cx计数寄存器,loop的结束条件,jcxz的跳转条件4dx运算寄存器5cs段地址,指令执行段地址6ss段地址,栈的段地…...

Group By、Having用法总结(常见踩雷点总结—SQL)

Group By、Having用法总结 目录 Group By、Having用法总结一、 GROUP BY 用法二、 HAVING 用法三、 GROUP BY 和 HAVING 的常见踩雷点3.1 GROUP BY 选择的列必须出现在 SELECT 中(🤣最重要的一点)3.2 HAVING 与 WHERE 的区别3.3 GROUP BY 可以…...

Redis持久化机制——针对实习面试

目录 Redis持久化机制Redis为什么要有持久化机制?Redis持久化方式有哪些?AOF持久化工作原理是什么?有什么优缺点?AOF持久化工作原理AOF的优点AOF的缺点 RDB持久化工作原理是什么?有什么优缺点?RDB持久化工作…...

Windows系统服务器怎么设置远程连接?详细步骤

一、什么是Windows远程桌面连接? Windows远程桌面(Remote Desktop)功能使用户能够通过网络连接到另一台Windows计算机,实现远程操作。远程桌面非常适合系统管理员、技术支持人员以及那些需要远程工作的人,它允许用户以图形界面的方式访问远程计算机&…...

【Rust设计模式之建造者模式】

Rust设计模式之建造者模式 什么是建造者模式 什么是建造者模式 即将结构体属性方法与构建解离,使用专门的builder进行建造,说白了就是new和其他的方法分开,集中处理更方便。 直接上代码: #[derive(Debug)] struct children {nam…...

2024中国移动(南京)智算大会暨人工智能产业大会即将盛大启幕

11月9日,2024中国移动(南京)智算大会暨人工智能产业大会将在南京国际博览中心盛大举行。此次盛会将汇聚政界、学界与商界的顶尖力量,共同探讨智能计算与人工智能的未来发展方向,为智能计算与人工智能产业的发展注入新的…...

计算机毕业设计 | SpringBoot咖啡商城 购物采买平台 后台管理软件(附源码)

1,项目背景 1.1 当前的问题和困惑 系统稳定性: 在高并发访问时,商城系统容易出现卡顿、崩溃等问题,影响了用户体验和销售额。支付安全性: 支付环节存在潜在的安全隐患,如何确保支付过程的安全性和用户资金…...

CosyVoice文本转语音:轻松创造个性化音频

CosyVoice文本转语音:轻松创造个性化音频" 要实现一个使用通义语音合成模型CosyVoice将文字转换为音频的图形界面应用,可以使用Python的tkinter库来创建图形用户界面(GUI),并使用requests库来调用CosyVoice的API…...

法语nous sommes

法语短语 “nous sommes” 的词源可以追溯到拉丁语,具体分析如下: 1. “Nous” 的词源: “Nous” 是法语中表示 “我们” 的人称代词,源自拉丁语的 “nos”,它表示 “我们” 的意思。 拉丁语 “nos” 是第一人称复数…...

《化学进展》

《化学进展》主要栏目有:综述,评论,中国化学印记,Mini Accounts等。本刊可供化学及相关学科领域的科研、教学、决策管理人员及研究生阅读。 《化学进展》投稿指南稿件要求   (1)本刊仅接受综述与评论性的…...

CNN和RCNN的关系和区别

RCNN(Region-based Convolutional Neural Network)和 CNN(Convolutional Neural Network)是两种不同的神经网络架构,它们在应用和结构上有所不同。以下是它们之间的主要区别: 1. 基本概念 CNN(…...

Chromium 进程降权和提权模拟示例c++

一、背景知识概念参考微软链接: 强制完整性控制 - Win32 应用程序 |Microsoft 学习 授权) (模拟级别 - Win32 apps | Microsoft Learn DuplicateTokenEx 函数 (securitybaseapi.h) - Win32 apps | Microsoft Learn 本文主要演示 low, medium, high, and system 四…...

【测试语言篇一】Python进阶篇:内置容器数据类型

一、列表 列表(List)是一种有序且可变的容器数据类型。 与集合(Set)不同,列表允许重复的元素。 它方便保存数据序列并对其进行进一步迭代。 列表用方括号创建。 my_list ["banana", "cherry", …...

湘潭大学软件工程专业选修 SOA 期末考试复习(二)

文章目录 回顾序言第一章课后题填空选择简答 第二章课后题填空选择编程 计划第三章课后题填空选择简答编程 第四章课后题填空选择简答编程 第五章课后题填空选择简答编程 第六章课后题说明 第七章课后题填空选择简答编程 第八章课后题填空选择简答编程 第九章课后题填空选择简答…...

改进的正弦余弦算法复现

本文所涉及所有资源均在 传知代码平台 可获取。 目录 一、背景及意义 (一)背包问题背景...

Day13杨辉三角

给定一个非负整数 numRows&#xff0c;生成「杨辉三角」的前 numRows 行。 在「杨辉三角」中&#xff0c;每个数是它左上方和右上方的数的和。 class Solution {public List<List<Integer>> generate(int numRows) {List<List<Integer>> res new Arra…...

【c知道】Hadoop工作原理。

请解释一下Hadoop中MapReduce的工作原理&#xff0c;并说明如何进行MapReduce程序的编写和调试。 Hadoop MapReduce是一种分布式计算模型&#xff0c;它将大规模的数据处理任务分解成一系列小的、独立的任务&#xff08;Map任务&#xff09;和后续的聚合任务&#xff08;Reduce…...

React.lazy() 懒加载

概要 React.lazy() 是 React 16.6 引入的一个功能&#xff0c;用于实现代码分割&#xff08;code splitting&#xff09;。它允许你懒加载组件&#xff0c;即在需要时才加载组件&#xff0c;而不是在应用初始加载时就加载所有组件。这种方法可以显著提高应用的性能&#xff0c…...

【自学笔记】神经网络(1)

文章目录 介绍模型结构层&#xff08;Layer&#xff09;神经元 前向传播反向传播Q1: 为什么要用向量Q2: 不用激活函数会发生什么 介绍 我们已经学习了简单的分类任务和回归任务&#xff0c;也认识了逻辑回归和正则化等技巧&#xff0c;已经可以搭建一个简单的神经网络模型了。 …...

c#————扩展方法

关键点&#xff1a; 定义扩展方法的类和方法必须是静态的&#xff1a; 扩展方法必须在一个静态类中定义。扩展方法本身也必须是静态的。第一个参数使用 this 关键字&#xff1a; 扩展方法的第一个参数指定要扩展的类型&#xff0c;并且在这个参数前加上 this 关键字。这个参数…...

挑战杯推荐项目

“人工智能”创意赛 - 智能艺术创作助手&#xff1a;借助大模型技术&#xff0c;开发能根据用户输入的主题、风格等要求&#xff0c;生成绘画、音乐、文学作品等多种形式艺术创作灵感或初稿的应用&#xff0c;帮助艺术家和创意爱好者激发创意、提高创作效率。 ​ - 个性化梦境…...

基于大模型的 UI 自动化系统

基于大模型的 UI 自动化系统 下面是一个完整的 Python 系统,利用大模型实现智能 UI 自动化,结合计算机视觉和自然语言处理技术,实现"看屏操作"的能力。 系统架构设计 #mermaid-svg-2gn2GRvh5WCP2ktF {font-family:"trebuchet ms",verdana,arial,sans-…...

Flask RESTful 示例

目录 1. 环境准备2. 安装依赖3. 修改main.py4. 运行应用5. API使用示例获取所有任务获取单个任务创建新任务更新任务删除任务 中文乱码问题&#xff1a; 下面创建一个简单的Flask RESTful API示例。首先&#xff0c;我们需要创建环境&#xff0c;安装必要的依赖&#xff0c;然后…...

Linux链表操作全解析

Linux C语言链表深度解析与实战技巧 一、链表基础概念与内核链表优势1.1 为什么使用链表&#xff1f;1.2 Linux 内核链表与用户态链表的区别 二、内核链表结构与宏解析常用宏/函数 三、内核链表的优点四、用户态链表示例五、双向循环链表在内核中的实现优势5.1 插入效率5.2 安全…...

mongodb源码分析session执行handleRequest命令find过程

mongo/transport/service_state_machine.cpp已经分析startSession创建ASIOSession过程&#xff0c;并且验证connection是否超过限制ASIOSession和connection是循环接受客户端命令&#xff0c;把数据流转换成Message&#xff0c;状态转变流程是&#xff1a;State::Created 》 St…...

Linux简单的操作

ls ls 查看当前目录 ll 查看详细内容 ls -a 查看所有的内容 ls --help 查看方法文档 pwd pwd 查看当前路径 cd cd 转路径 cd .. 转上一级路径 cd 名 转换路径 …...

页面渲染流程与性能优化

页面渲染流程与性能优化详解&#xff08;完整版&#xff09; 一、现代浏览器渲染流程&#xff08;详细说明&#xff09; 1. 构建DOM树 浏览器接收到HTML文档后&#xff0c;会逐步解析并构建DOM&#xff08;Document Object Model&#xff09;树。具体过程如下&#xff1a; (…...

【AI学习】三、AI算法中的向量

在人工智能&#xff08;AI&#xff09;算法中&#xff0c;向量&#xff08;Vector&#xff09;是一种将现实世界中的数据&#xff08;如图像、文本、音频等&#xff09;转化为计算机可处理的数值型特征表示的工具。它是连接人类认知&#xff08;如语义、视觉特征&#xff09;与…...

Spring数据访问模块设计

前面我们已经完成了IoC和web模块的设计&#xff0c;聪明的码友立马就知道了&#xff0c;该到数据访问模块了&#xff0c;要不就这俩玩个6啊&#xff0c;查库势在必行&#xff0c;至此&#xff0c;它来了。 一、核心设计理念 1、痛点在哪 应用离不开数据&#xff08;数据库、No…...

【7色560页】职场可视化逻辑图高级数据分析PPT模版

7种色调职场工作汇报PPT&#xff0c;橙蓝、黑红、红蓝、蓝橙灰、浅蓝、浅绿、深蓝七种色调模版 【7色560页】职场可视化逻辑图高级数据分析PPT模版&#xff1a;职场可视化逻辑图分析PPT模版https://pan.quark.cn/s/78aeabbd92d1...