34.x64汇编写法(一)

免责声明:内容仅供学习参考,请合法利用知识,禁止进行违法犯罪活动!

本次游戏没法给

内容参考于:微尘网络安全

上一个内容:33.第二阶段x64游戏实战-InLineHook

首先打开 Visual Studio,然后创建新项目

然后创建一个控制台应用

然后选择一个保存代码的目录和项目名,然后点击创建

在x32的程序里,直接使用_asm就可以写汇编代码,但是在x64里不可以使用_asm了,如下图直接在x64里使用_asm编译会报错

x64正确的写汇编的方式,首选如下图右击项目,选择生成自定义

然后把下图红框的两个勾选上,然后点击确定

然后如下图右击选择新建项,注意这次右击的是源文件目录

如下图红框,创建一个.asm结尾的文件

然后点击完添加,x64的汇编代码要写只能写在.asm后缀的文件里

然后选择属性

然后选择下图红框的选项,一般默认就会使下图红框的选项,但有时候会不是

然后可以写汇编代码了,如下图是固定的格式,代码写在.code 和 end之间

创建一个叫main的函数,也是固定格式

注意下图的文件的内容,已经没有main函数了

然后重新生成

然后重新生成成功

简单的汇编代码

调用 getchar函数(是C语言标准库中的函数,用来接收一个键盘按下的按键)

复制代码
; 找一个叫 getchar的函数,extern固定写法,:far也是固定写法
; 如果没有 extern getchar:far 这一行在执行call getchar的时候会报错编译也会失败
extern getchar:far
.code
	main proc
		sub rsp,100h
		call getchar
		add rsp,100h
		ret
	main endp
end

效果图:被getchar函数卡主


相关推荐
我在人间贩卖青春6 天前
汇编之伪指令
汇编·伪指令
我在人间贩卖青春6 天前
汇编之伪操作
汇编·伪操作
济6176 天前
FreeRTOS基础--堆栈概念与汇编指令实战解析
汇编·嵌入式·freertos
myloveasuka6 天前
汇编TEST指令
汇编
我在人间贩卖青春6 天前
汇编编程驱动LED
汇编·点亮led
我在人间贩卖青春6 天前
汇编和C编程相互调用
汇编·混合编程
myloveasuka7 天前
寻址方式笔记
汇编·笔记·计算机组成原理
请输入蚊子7 天前
《操作系统真象还原》 第六章 完善内核
linux·汇编·操作系统·bochs·操作系统真像还原
myloveasuka7 天前
指令格式举例
汇编·笔记·计算机组成原理
我在人间贩卖青春8 天前
汇编之分支跳转指令
汇编·arm·分支跳转