草庐IT

汇编指令

全部标签

c++ - 如何查看Code::Blocks中的反汇编?

我读了thisarticle关于C/C++的一些底层基础,作者基本上是通过编译器生成的汇编代码逐行向我们展示。他用的是VS2010,我不用,我用的是Code::Blocks。我如何查看那里的反汇编?当我转到调试器并单击反汇编时,它会显示一个空白窗口...这是我编译的C++(.cpp)代码(完整代码):intmain(){intx=1;inty=2;intz=0;z=x+y;return0;} 最佳答案 作者在文章中展示的反汇编称为inter-leaveddisassembly(C和反汇编交错),VisualStudio等一些IDE支

c++ - i5-2500k 上的 cpuid 指令 : MMX, SSE,SSE2 位未设置

这是预期的吗?我希望我的SandyBridgeCPU报告它可以处理MMX、SSE和SSE2指令。这些位是否未设置是因为这些“旧”指令集已被一些较新的指令集“取代”?我用了thiscodehere将CPU检测放入我的代码中。#include"CPUID.h"intmain(intargc,char*argv[]){CPUIDcpuid;cpuid.load(0);printf("CPU:%.4s%.4s%.4s",(constchar*)&cpuid.EBX(),(constchar*)&cpuid.EDX(),(constchar*)&cpuid.ECX());charbrand[0x

c++ - 是否有用于检测 C++11 标准库的预处理器指令?

是否可以使用预处理器指令确定C++标准库是否支持C++11?我目前正在开发一个使用C++11语言方言的项目,但使用不支持C++11的C++标准库(我需要它才能与非C++11库链接).我知道我可以使用#if__cplusplus>=201103L测试C++11支持,但在我的例子中,这将评估为true。我需要了解C++标准库对C++11的支持。 最佳答案 功能测试是标准委员会朝着下一个C++14标准(及更高标准)迈进的一个积极研究方向。有一个第10研究组可以免费访问mailinglist正在讨论当前发展的地方。对于下一次session,

c++ - 反汇编多重继承中的虚拟方法。 vtable 是如何工作的?

假设以下C++源文件:#includeclassBaseTest{public:inta;BaseTest():a(2){}virtualintgB(){returna;};};classSubTest:publicBaseTest{public:intb;SubTest():b(4){}};classTriTest:publicBaseTest{public:intc;TriTest():c(42){}};classEvilTest:publicSubTest,publicTriTest{public:virtualintgB(){returnb;}};intmain(){EvilT

c++ - char* 与先前指令中设置的值的比较未优化?

在摆弄一些测试代码时,我在以下代码中观察到:externchar*pc;intmuysimple(){*pc=0;if(*pc!=0){return1111;}return4444;}比较没有被我在godbolt上选择的任何编译器优化掉.如果我将externchar*更改为externint*,比较将被优化掉。为什么gcc和clang都保留对char的比较,即使这段代码中似乎没有任何内容可以合法地更改值以使比较的计算结果为真?语言规范中是否有任何内容禁止通过char*进行写入/读取优化(但允许优化int*!)还是优化器只是对char更加保守?正如评论中已经提到的那样:我不明白--明智的

c++ - 汇编代码的数据结构? [研究]

我打算创建一个优化的数据结构来保存汇编代码。这样我就可以完全负责将在这个结构上工作的优化算法。如果我可以边运行边编译。这将是一种动态执行。这可能吗?有没有人见过这样的事情?我应该使用结构将结构链接到程序流中吗?对象更好吗?structasm_code{inttype;intvalue;intoptimized;asm_code*next_to_execute;}asm_imp;更新:我想它会变成一个链表。更新:我知道还有其他编译器。但这是军方的绝密项目。所以我们不能相信任何代码。我们必须自己做这一切。更新:好的,我想我会生成基本的i386机器代码。但是当它完成时我如何跳入我的内存blo

Linux 基本指令

目录传统艺能😎Linux起源🤔理解与应用🤔OS🤔为什么要指令操作🤔基本指令🤔ls命令🎉-a指令🎉文件路径🎉cd-指令🤔mkdir指令🤔rm指令🤔传统艺能😎小编是双非本科大一菜鸟不赘述,欢迎大佬指点江山(QQ:1319365055)此前博客点我!点我!请搜索博主【知晓天空之蓝】🎉🎉非科班转码社区诚邀您入驻🎉🎉小伙伴们,打码路上一路向北,背后烟火,彼岸之前皆是疾苦一个人的单打独斗不如一群人的砥砺前行这是我和梦想合伙人组建的社区,诚邀各位有志之士的加入!!社区用户好文均加精(“标兵”文章字数2000+加精,“达人”文章字数1500+加精)直达:社区链接点我🎉🎉🎉倾力打造转码社区微信公众号🎉🎉🎉Lin

c++ - 如何在 Eclipse 中指定预处理器指令?

如何在eclipse中为不同的配置指定预处理器指令?例如,如果我有多个主电源应该以不同的配置运行并指定#ifdefProblem1//mainfunc#endif/*Problem1*/请注意,这是托管makefile 最佳答案 documentation指向“C/C++项目属性”→“路径和符号”→“符号”。但是,通常最好为不同的配置/架构/...使用不同的源文件,而不是大量使用预处理器。 关于c++-如何在Eclipse中指定预处理器指令?,我们在StackOverflow上找到一个类

c++ - 使用 <ctime> 和指令重新排序进行基准测试

到目前为止,我一直在使用传统方法对并发方法进行基准测试,即测量多次运行的耗时:templatedoublebenchmark(Functorconst&f,size_tnbRuns){if(nbRuns==0){return0.0;}f();//Initializebeforemeasuring,Iamnotinterestinginsetupcosttime_tbegin=time(0);for(size_ti=0;i!=nbRuns;++i){f();}time_tend=time(0);returndifftime(end,begin);}在我遇到这个问题之前,这一切看起来都很好

c++ - 在预处理器指令中包含静态库

我正在使用VisualStudio2012。我多次使用预处理器指令,例如#ifdefsomething#include#else#include#endif我想知道是否有可能以类似的方式链接静态库:#ifdefsomething//usesome_library.lib#else//useother_library.lib#endif问题,来self的主题previousquestion:我有两个没有命名空间的静态库lib1.lib、lib2.lib(不是他们的代码),具有相同的函数原型(prototype),但具有不同的实现。 最佳答案