我是靠谱客的博主 坚强热狗,最近开发中收集的这篇文章主要介绍c执行机器码,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

c语言中执行汇编代码可以直接嵌在_asm{}块中,但是怎么执行机器码呢。
先定义一个机器码数组,然后通过函数指针调用。

unsigned char code[] =//{return   x+y;}   
	{
		0x55, 0x8B, 0xEC, 0x83, 0xEC, 0x40, 0x53, 0x56, 0x57,
		0x8d, 0x7d, 0xc0, 0xb9, 0x10, 0x00, 0x00, 0x00, 0xb8,
		0xcc, 0xcc, 0xcc, 0xcc, 0xf3, 0xab,
		0x8b, 0x45, 0x08, 0x03, 0x45, 0x0c,
		0x5f, 0x5e, 0x5b, 0x8b, 0xe5, 0x5d, 0xc3
	};

	typedef int(*FUN)(int, int);
	FUN fun = (FUN)(void *)code;
	int x = fun(1, 2);
	```

最后

以上就是坚强热狗为你收集整理的c执行机器码的全部内容,希望文章能够帮你解决c执行机器码所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(41)

评论列表共有 0 条评论

立即
投稿
返回
顶部