EQU 给数字常量取一个符号名,相当于c中的define。 AREA 告诉汇编器汇编一个新的代码段。 SPACE 分配内存空间。 PRESERVE 当前文件堆栈按照8字节对齐。 EXPORT 声明一个标号具有全局属性,可被外部文件使用。 PROC 定义子程序,与ENDP成对使用。 DCD 以字为单位 ...
分类:
其他好文 时间:
2019-11-15 14:11:42
阅读次数:
72
如何阅读反汇编文件? 以下是一个例子 4bc: e3a0244e mov r2, #1308622848 4c0: e3a0344e mov r3, #1308622848 4c4: e5933000 ldr r3, [r3] 像4bc这些是代码运行的地址, e3a0244e是机器码 那常用的汇编指 ...
分类:
其他好文 时间:
2019-11-10 09:31:30
阅读次数:
117
PC值(Program Counter). ARM采用流水线来提高CPU的利用效率, 对于三级流水线, 一条汇编指令的执行包括 取值, 译码, 执行三个阶段. 当MOV指令的取指动作完毕后, 进入MOV指令的译码阶段, 同时开始ADD指令的取指动作. 由图中可以发现, 正在执行MOV指令时, 同时处 ...
分类:
其他好文 时间:
2019-11-10 00:01:33
阅读次数:
153
字符串或串(String)是由数字、字母、下划线组成的一串字符。一般记为s=“a1a2···an”(n>=0)。它是编程语言中表示文本的数据类型。在程序设计中,字符串(string)为符号或数值的一个连续序列,如符号串(一串字符)或二进制数字串(一串二进制数字)。String类型你一定不陌生,毕竟每一位coder都是从varstr1=“HelloWorld”过来的。但它真的就只是如此吗?听我
分类:
编程语言 时间:
2019-11-09 09:43:12
阅读次数:
103
《JVM指令助记符》 《JVM指令集》 1、栈和局部变量操作 1.1 将常量压入栈的指令 1.2 从栈中的局部变量中装载值的指令 1.3 将栈中的值存入局部变量的指令 2、类型转换 3、整数运算 4、逻辑运算 4.1 位移操作 4.2 按位布尔运算 4.3 浮点运算 5、对象和数组 5.1 对象操作 ...
分类:
其他好文 时间:
2019-10-15 13:30:17
阅读次数:
126
一、javap命令简述 javap是jdk自带的反解析工具。它的作用就是根据class字节码文件,反解析出当前类对应的code区(汇编指令)、本地变量表、异常表和代码行偏移量映射表、常量池等等信息。当然这些信息中,有些信息(如本地变量表、指令和代码行偏移量映射表、常量池中方法的参数名称等等)需要在使 ...
分类:
编程语言 时间:
2019-10-11 10:44:37
阅读次数:
95
javac : 编译代码(即将.java文件编译成.class的中立字节码文件) eg:javac App.java javap是jdk自带的反解析工具。它的作用就是根据class字节码文件,反解析出当前类对应的code区(汇编指令)、本地变量表、异常表和代码行偏移量映射表、常量池等等信息。 jav ...
分类:
其他好文 时间:
2019-09-08 09:41:21
阅读次数:
86
一、CMP指令 这一块呢,我不想上图了,汇编的博文我已经快要让我写吐了,其实也有好多我没有补充进来,比如进制,LEA指令,数据宽度,有符号,无符号的区分等等,但我真的要吐了,这些玩意我已经不是第一次写了,也不是第一次看了,以前我是习惯于在EXCEL上写,这一次由于是我对汇编遗忘的有点狠,想从头复习一 ...
分类:
其他好文 时间:
2019-09-06 22:53:06
阅读次数:
88
简单介绍了,JMP指令按市面上的意思来说是跳转到指定地址,但我这里不这么说,JMP, CALL, RET三个指令均为修改EIP值的指令,EAX, ECX, EBX, EDX, ESP, EBP, ESI, EDI,这8个寄存器的值均可以用mov指令来修改里面的值,EIP行不行呢?我们实际测试一下。 ...
分类:
其他好文 时间:
2019-09-06 01:19:52
阅读次数:
148