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

广东东莞住建局seo搜索引擎优化入门

广东东莞住建局,seo搜索引擎优化入门,小程序代理商怎么赚钱,响应式网站 解决方案​ 通用寄存器 EAX 32位 函数返回值 AX 低16位 AH 高八位 AL 低八位 EBX 32位 ECX 32位 循环次数,this指针 EDX 32位 EBP 32位 栈底寄存器 ESP 32位 栈顶寄存器 ESI 源索引寄存器 EDI 目标索引寄存器 EIP 无法直接通过汇编操作 例子 mov al,0xff …

 

通用寄存器

EAX 32位 函数返回值
AX 低16位 AH 高八位 AL 低八位
EBX 32位
ECX 32位 循环次数,this指针
EDX 32位
EBP 32位 栈底寄存器
ESP 32位 栈顶寄存器
ESI 源索引寄存器
EDI 目标索引寄存器

EIP 无法直接通过汇编操作

例子

mov al,0xff
add al,1
产生截断mov al,0xff
add ax,1
产生进位

状态寄存器

状态寄存器(Status Register),也称为标志寄存器(Flag
Register),是计算机中的一种特殊寄存器。状态寄存器用于保存关于计算机状态和执行结果的信息,通常由一组二进制位组成,每个位都对应一个特定的状态标志。

在x86架构中,状态寄存器通常由一些标志位组成,其中包括:

  1. 零标志位(Zero Flag,ZF):指示最近的运算结果是否为零。如果运算结果为零,则ZF被置为1,否则为0。
  2. 进位标志位(Carry Flag,CF):用于处理进位和借位操作。如果最近的运算产生了进位(或借位),CF被置为1,否则为0。
  3. 溢出标志位(Overflow Flag,OF):用于检测运算结果是否溢出。如果最近的运算结果造成了溢出,OF标志被置为1,否则为0。
  4. 符号标志位(Sign Flag,SF):指示最近的运算结果的符号。如果结果为负数,则SF被置为1,否则为0。
  5. 奇偶标志位(Parity Flag,PF):指示最近的运算结果中设置了偶数个位的数量。如果结果中偶数个位被设置为1,则PF被置为1,否则为0。
  6. 调整标志位(Adjust Flag,AF):在二进制代码运算中用于处理BCD码(二进制编码的十进制数)。在一般的计算中不常使用。

除了上述标志位外,不同架构和处理器还可能存在其他特定的标志位。

状态寄存器广泛用于控制和判断程序的执行流程,以及进行条件分支和循环控制。通过检查和设置状态寄存器中的标志位,程序可以根据运算结果和条件进行相应的操作。
JCC指令

指令条件
JZ等于(ZF=1)
JE等于(ZF=1)
JNZ不等于(ZF=0)
JNE不等于(ZF=0)
JA无符号大于(CF=0且ZF=0)
JNBE无符号大于(CF=0且ZF=0)
JAE无符号大于等于(CF=0)
JNB无符号大于等于(CF=0)
JNC无符号大于等于(CF=0)
JB无符号小于(CF=1)
JNAE无符号小于(CF=1)
JBE无符号小于等于(CF=1或ZF=1)
JNA无符号小于等于(CF=1或ZF=1)
JCXZCX/ECX为零
JECXZECX为零
JG有符号大于(ZF=0且SF=OF)
JNLE有符号大于(ZF=0且SF=OF)
JGE有符号大于等于(SF=OF)
JNL有符号大于等于(SF=OF)
JL有符号小于(SF≠OF)
JNGE有符号小于(SF≠OF)
JLE有符号小于等于(ZF=1或SF≠OF)
JNG有符号小于等于(ZF=1或SF≠OF)
JO溢出(OF=1)
JNO未溢出(OF=0)
JS负数(SF=1)
JNS非负数(SF=0)

汇编指令

分类示例指令功能
数据传输指令MOV从一个位置复制数据到另一个位置
PUSH将数据推入堆栈
POP将数据从堆栈弹出
XCHG交换两个位置的数据
LEA加载地址
MOVS将一个字符串的数据复制到另一个字符串
LODS将数据从一个位置加载到累加器
STOS将累加器中的数据存储到一个位置
算术和逻辑指令ADD将两个数相加
SUB从一个数中减去另一个数
MUL执行无符号乘法
DIV执行无符号除法
AND执行逻辑与操作
OR执行逻辑或操作
XOR执行异或操作
NOT执行逻辑非操作
控制流指令JMP无条件跳转到指定地址
Jcc条件跳转指令,根据标志位执行跳转
CALL调用子程序或函数
RET返回子程序或函数调用点
INT触发中断服务例程
LOOP根据计数器值循环执行指令
HLT暂停处理器运行
状态标志位指令CMP比较两个数
TEST按位进行与操作并更新标志位
CLC清除进位标志位
STC设置进位标志位
CMC取反进位标志位
CLD清除方向标志位
STD设置方向标志位
字符串和循环指令MOVS将一个字符串的数据复制到另一个字符串
CMPS比较两个字符串的数据
SCAS在字符串中搜索指定的数据
REP重复执行指令块
REPE/REPZ如果相等则重复执行指令块
REPNE/REPNZ如果不相等则重复执行指令块
堆栈指令PUSH将数据推入堆栈
POP将数据从堆栈弹出
PUSHAD将所有通用寄存器的值推入堆栈
POPAD将所有通用寄存器的值从堆栈弹出
PUSHA将通用寄存器的值推入堆栈
POPA将通用寄存器的值从堆栈弹出
过程和函数指令CALL调用子程序或函数
RET返回子程序或函数调用点
ENTER建立堆栈帧
LEAVE恢复调用者的堆栈帧
PROC定义一个过程
ENDP定义过程结束
I/O指令IN从指定端口读取数据
OUT将数据写入指定端口
INS从数据端口读取数据到字符串
OUTS将字符串的数据写入到数据端口
CLI关中断
STI开中断

通用寄存器

EAX 32位 函数返回值
AX 低16位 AH 高八位 AL 低八位
EBX 32位
ECX 32位 循环次数,this指针
EDX 32位
EBP 32位 栈底寄存器
ESP 32位 栈顶寄存器
ESI 源索引寄存器
EDI 目标索引寄存器

EIP 无法直接通过汇编操作

例子

mov al,0xff
add al,1
产生截断mov al,0xff
add ax,1
产生进位

状态寄存器

​编辑

2023-08-30T09:03:45.png

状态寄存器(Status Register),也称为标志寄存器(Flag
Register),是计算机中的一种特殊寄存器。状态寄存器用于保存关于计算机状态和执行结果的信息,通常由一组二进制位组成,每个位都对应一个特定的状态标志。

在x86架构中,状态寄存器通常由一些标志位组成,其中包括:

  1. 零标志位(Zero Flag,ZF):指示最近的运算结果是否为零。如果运算结果为零,则ZF被置为1,否则为0。
  2. 进位标志位(Carry Flag,CF):用于处理进位和借位操作。如果最近的运算产生了进位(或借位),CF被置为1,否则为0。
  3. 溢出标志位(Overflow Flag,OF):用于检测运算结果是否溢出。如果最近的运算结果造成了溢出,OF标志被置为1,否则为0。
  4. 符号标志位(Sign Flag,SF):指示最近的运算结果的符号。如果结果为负数,则SF被置为1,否则为0。
  5. 奇偶标志位(Parity Flag,PF):指示最近的运算结果中设置了偶数个位的数量。如果结果中偶数个位被设置为1,则PF被置为1,否则为0。
  6. 调整标志位(Adjust Flag,AF):在二进制代码运算中用于处理BCD码(二进制编码的十进制数)。在一般的计算中不常使用。

除了上述标志位外,不同架构和处理器还可能存在其他特定的标志位。

状态寄存器广泛用于控制和判断程序的执行流程,以及进行条件分支和循环控制。通过检查和设置状态寄存器中的标志位,程序可以根据运算结果和条件进行相应的操作。
JCC指令

指令条件
JZ等于(ZF=1)
JE等于(ZF=1)
JNZ不等于(ZF=0)
JNE不等于(ZF=0)
JA无符号大于(CF=0且ZF=0)
JNBE无符号大于(CF=0且ZF=0)
JAE无符号大于等于(CF=0)
JNB无符号大于等于(CF=0)
JNC无符号大于等于(CF=0)
JB无符号小于(CF=1)
JNAE无符号小于(CF=1)
JBE无符号小于等于(CF=1或ZF=1)
JNA无符号小于等于(CF=1或ZF=1)
JCXZCX/ECX为零
JECXZECX为零
JG有符号大于(ZF=0且SF=OF)
JNLE有符号大于(ZF=0且SF=OF)
JGE有符号大于等于(SF=OF)
JNL有符号大于等于(SF=OF)
JL有符号小于(SF≠OF)
JNGE有符号小于(SF≠OF)
JLE有符号小于等于(ZF=1或SF≠OF)
JNG有符号小于等于(ZF=1或SF≠OF)
JO溢出(OF=1)
JNO未溢出(OF=0)
JS负数(SF=1)
JNS非负数(SF=0)

​编辑

2023-08-30T09:14:35.png

汇编指令

分类示例指令功能
数据传输指令MOV从一个位置复制数据到另一个位置
PUSH将数据推入堆栈
POP将数据从堆栈弹出
XCHG交换两个位置的数据
LEA加载地址
MOVS将一个字符串的数据复制到另一个字符串
LODS将数据从一个位置加载到累加器
STOS将累加器中的数据存储到一个位置
算术和逻辑指令ADD将两个数相加
SUB从一个数中减去另一个数
MUL执行无符号乘法
DIV执行无符号除法
AND执行逻辑与操作
OR执行逻辑或操作
XOR执行异或操作
NOT执行逻辑非操作
控制流指令JMP无条件跳转到指定地址
Jcc条件跳转指令,根据标志位执行跳转
CALL调用子程序或函数
RET返回子程序或函数调用点
INT触发中断服务例程
LOOP根据计数器值循环执行指令
HLT暂停处理器运行
状态标志位指令CMP比较两个数
TEST按位进行与操作并更新标志位
CLC清除进位标志位
STC设置进位标志位
CMC取反进位标志位
CLD清除方向标志位
STD设置方向标志位
字符串和循环指令MOVS将一个字符串的数据复制到另一个字符串
CMPS比较两个字符串的数据
SCAS在字符串中搜索指定的数据
REP重复执行指令块
REPE/REPZ如果相等则重复执行指令块
REPNE/REPNZ如果不相等则重复执行指令块
堆栈指令PUSH将数据推入堆栈
POP将数据从堆栈弹出
PUSHAD将所有通用寄存器的值推入堆栈
POPAD将所有通用寄存器的值从堆栈弹出
PUSHA将通用寄存器的值推入堆栈
POPA将通用寄存器的值从堆栈弹出
过程和函数指令CALL调用子程序或函数
RET返回子程序或函数调用点
ENTER建立堆栈帧
LEAVE恢复调用者的堆栈帧
PROC定义一个过程
ENDP定义过程结束
I/O指令IN从指定端口读取数据
OUT将数据写入指定端口
INS从数据端口读取数据到字符串
OUTS将字符串的数据写入到数据端口
CLI关中断
STI开中断
http://www.tj-hxxt.cn/news/113041.html

相关文章:

  • 做的网站一模一样会被告吗广州网站优化多少钱
  • 乐平城市建设局网站百度指数排行榜
  • 求生之路2怎么做非官方网站抖音seo源码搭建
  • 做js题目的网站天津百度推广公司电话
  • 自己做商品网站怎么做培训机构排名前十
  • 高端网站建设企业官网建设网络营销分类
  • vps挂网站企业网站建站
  • 代运营公司的套路seo深度解析
  • 网站域名在限制域名中成都黑帽seo
  • 桂林设计单位资质升级网站百度怎么免费推广自己的产品
  • 门户网站的建设和管理情况自查长沙全网推广
  • 淘宝客如何做网站全网引擎搜索
  • 怎么自己做网站表白单页网站排名优化
  • 邢台wap网站建设外贸网站平台都有哪些
  • 网上帮别人做网站单页应用seo如何解决
  • 为什么百度地图嵌入网站不显示百度应用平台
  • 百度小程序 wordpressseo搜索引擎优化实训总结
  • wordpress网站备案号许昌网站seo
  • 邻水网站建设网上推广怎么弄?
  • 做相框的网站债务优化是什么意思
  • 常州网站制作市场网络营销的常用方法
  • 网店管家官网搜索引擎优化工具有哪些
  • 深圳电商网站开发公司鲜花网络营销推广方案
  • 网站开发计划书范文百度推广优化师是什么
  • 舆情监测系统方案搜外seo
  • 怀柔区企业网站设计机构提供广告代运营
  • 电子商务类网站模板seo网站推广软件排名
  • 美食网站的设计与制作站长工具域名
  • 怎样给自己的店子做网站网站seo哪家公司好
  • 做网站在阿里云买什么网络安全培训机构哪家好