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

汇编指令学习(LOOP)

一、xor异或操作,相同为0,不同为1

xor eax,eax

eax异或eax,相同为0,并把结果存放到eax,简单说该语句就是想eax寄存器清零。

二、ECX,计数器

mov ecx,0x3

将ecx寄存器设置为3

三、DEC减一操作

dec ecx

ecx寄存器的值每次减一

四、TEST,逻辑与操作,一0则0

test ecx,ecx

将ecx进行逻辑与运算,结果为0,ZF标志位设置为1,不为0,ZF位置设置为0

五、JNZ跳转操作,ZF不为0则发生跳转

jne 0x0046B996

跳转到第三步继续减一操作,知道ecx为0

六、使用LOOP命令实现跳转

循环的时候,ecx为默认的技术操作,当ecx为1的时候,跳出循环

先将edx进行异或操作置为0,将计数器置为3,每次循环edx加一,loop判断ecx是否为1,当为1的时候,执行下一条汇编代码

七、汇编实现1-100相加操作

将eax置零,将寄存器置为100,每次eax加一,loop判断ecx是否为1,为了方便操作,将loop下一条设置一个断点,按F8直接运行完循环,eax结果变为100.

http://www.lryc.cn/news/33703.html

相关文章:

  • Linux 配置本地yum源
  • 【PyTorch】教程:torch.nn.LeakyReLU
  • 【刷题】-- 基础 -- 二分查找
  • Spark MLlib 特征工程
  • CentOS7 完全卸载 php
  • 关于OCS认证里必须知晓的内容
  • 创业做电商难不难?新人做电商怎么才能挣钱?
  • 【项目设计】高并发内存池(七)[性能测试和提升]
  • PHP:Laravel cast array json数据存数据库时unicode 编码问题和update更新不触发数据转换
  • 自动化测试总结--断言
  • 传输线的物理基础(三):传输线的瞬时阻抗
  • 第六章:多线程
  • 铁路与公路
  • GitHub Copilot 全新升级,工作效率提升 55%
  • 【IoT】《天道》中音响案例的SWOT分析
  • 如何实现接口幂等性
  • 相恨见晚的office办公神器(不坑盒子/打工人Excel插件2023年最新版)
  • matlab基础到实战(1)
  • 谷歌发布编写分布式应用的框架Service Weaver
  • 详解FPGA:人工智能时代的驱动引擎观后感
  • Rest/Restful接口
  • 【vue init】三.项目引入axios、申明全局变量、设置跨域
  • 搭建nextcloud私有云盘
  • 05 | 如何安全、快速地接入OAuth 2.0?
  • nest.js学习笔记(一)
  • win下载配置CIC Flowmeter环境并提取流量特征
  • 【LeetCode刷题-Java/Python】二分查找
  • Linux 6.2 已正式发布
  • Kubernetes 101,第一部分,基础知识
  • 企业级信息系统开发学习笔记1.7 基于XML配置方式使用Spring MVC