博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
和求余运算巧妙结合的jns指令
阅读量:6162 次
发布时间:2019-06-21

本文共 1250 字,大约阅读时间需要 4 分钟。

 

.text:004A78B1    and eax, 80000001h

.text:004A78B6    jns short loc_4A78BD
.text:004A78B8    dec eax
.text:004A78B9    or eax, 0FFFFFFFEh
.text:004A78BC    inc eax
.text:004A78BD
.text:004A78BD  loc_4A78BD:
.text:004A78BD    jnz short loc_4A78D9

当你看到这段代码,它是什么意思呢?

我曾经在看雪的帖子上看到过相当好的解释,可是现在找不到了,很遗憾

那么只好自己记录下

阅读下面代码,你就懂得它的含义

18:             if(i%2 == 0)

0041147C 8B 45 F8        mov eax,dword ptr [i]
0041147F 25 01 00 00 80    and eax,80000001h
00411484 79 05         jns main+6Bh (41148Bh)
00411486 48            dec eax
00411487 83 C8 FE        or eax,0FFFFFFFEh
0041148A 40            inc eax
0041148B 85 C0         test eax,eax
0041148D 75 19         jne main+88h (4114A8h)
19:             {
20:
21:                  count++;
0041148F A1 9C 90 41 00    mov eax,dword ptr [count]
00411494 83 C0 01        add eax,1
00411497 A3 9C 90 41 00      mov dword ptr [count],eax
22:                sum += count;
0041149C 8B 45 EC        mov eax,dword ptr [sum]
0041149F 03 05 9C 90 41 00   add eax,dword ptr [count]
004114A5 89 45 EC        mov dword ptr [sum],eax
23:             }
24:               sum += count;
004114A8 8B 45 EC        mov eax,dword ptr [sum]
004114AB 03 05 A0 90 41 00   add eax,dword ptr [count]
004114B1 89 45 EC        mov dword ptr [sum],eax

 

 

 

 

 

转载地址:http://luafa.baihongyu.com/

你可能感兴趣的文章
小程序: 查看正在写的页面
查看>>
Jenkins持续集成环境部署
查看>>
MWeb 1.4 新功能介绍二:静态博客功能增强
查看>>
预处理、const与sizeof相关面试题
查看>>
爬虫豆瓣top250项目-开发文档
查看>>
有趣的数学书籍
查看>>
teamviewer 卸载干净
查看>>
eclipse的maven、Scala环境搭建
查看>>
架构师之路(一)- 什么是软件架构
查看>>
USACO 土地购买
查看>>
【原创】远景能源面试--一面
查看>>
B1010.一元多项式求导(25)
查看>>
10、程序员和编译器之间的关系
查看>>
配置 RAILS FOR JRUBY1.7.4
查看>>
AndroidStudio中导入SlidingMenu报错解决方案
查看>>
修改GRUB2背景图片
查看>>
Ajax异步
查看>>
好记性不如烂笔杆-android学习笔记<十六> switcher和gallery
查看>>
JAVA GC
查看>>
3springboot:springboot配置文件(外部配置加载顺序、自动配置原理,@Conditional)
查看>>