1.汇编语言--基本概念和环境配置

汇编语言用到的地方

1.纯汇编语言开发:追求效率的程序开发,不过目前比较少了

2.高级语言内联汇编:嵌套在高级语言当中,有些高级语言实现不了的或者突然要最求速度的

3.Windows内核编程,调试内核

4.逆向分析 

汇编语言与机器语言是一一对应的

call = E9

jmp =E8

nop = 90

学习目标:

x86汇编语言:也是32位汇编语言

x64位

伪指令

高级数据表示

win32汇编入门

内联汇编

环境配置

我这里用vs2015,其他版本也可以。

1.新建项目

 2.点击空项目,然后点击完成

 3.右击项目名,点击属性

4.在入口点处输入main

 5.项目名字右击--生产依赖项-自定义--勾上masm

6.可以添加源文件了 .asm 后缀

7. 添加一个让代码有颜色的插件 工具--扩展和更新

8.输入测试代码

.586
.MODEL flat, stdcall
includelib user32.lib
includelib kernel32.lib
ExitProcess PROTO, dwExitCode : DWORD
MessageBoxA PROTO hwnd : DWORD, lpText : BYTE, lpCaption : BYTE, uType :DWORD
.data
Number DWORD 0
text db "shellcode",0
.code
main proc
        mov eax,5
        mov ebx,6
        add eax,ebx
        add eax,Number
        push 0
        push offset text
        push offset text
        push 0
        call MessageBoxA
        add esp,16
        call ExitProcess
main ENDP
END main

原文地址:https://www.cnblogs.com/trevain/p/14496203.html