2018-07-11

汇编的学习
  • cpu工作的原理
    cpu由总线调用位置寄存器中存储的内存的位置,并读取内存,识别内存中的代码与数据,执行代码,调用数据,以此完成程序的调用。

cpu指认被cs:ip指向的内存为代码

  • 8086中的寄存器
    ax bx cx dx 通用寄存器
    cs ds es ss 代码段寄存器
    ip 指令指针寄存器
    cs:ip 组合可视作指令指示器 且要指向指令所属的首地址r
  • 基本的命令
    1.mov 传送指令,用于对通用寄存器的赋值
    例如 mov ax,123 将123的值赋予ax通用寄存器

2.jmp 2AE3:3 将2AE3赋给cs 将3赋给ip 于是访问的内存位置就为2AE33H
修改ip的值 可用jmp + 某一合法寄存器 jum ax 即将ax的值赋给ip寄存器

3.add ax,bx 加法运算将ax+bx 的值赋给ax

4.sub 减法运算 sub ax,bx 将ax-bx 的值赋给ax

  1. pus
  • DOS命令
    查看内存的内容 D
    查看修改CPU寄存器的内容 R
    修改内存的内容 E
    将内存中的内容解释为机器指令和对应的汇编指令 T
    以汇编的形式向内存中写入指令 A

DS[address] ds寄存器用于储存要访问数据的段地址
mov ax(al) ,[] 可以用于传输某个内存位置的数据字(字节)


  • 出栈 PUSH
    入栈 POP
    ss 栈顶寄存器
    sp 栈偏移记录
  • IDA权威指南
    有了一些汇编的基础了

  • smali
    每一个smali文件头三行都包含
    .class <访问权限> [修饰关键字]<类名>
    .super <父类名>
    .source<源文件名>

public private protected 访问权限

你可能感兴趣的:(2018-07-11)