inline-assembly 相关问题

嵌入在另一个更高语言的源中的程序集,例如嵌入在C或C ++中的x86程序集。

为什么发布空的asm命令交换变量?

因此,我搞乱了内联汇编,并使用GCC 9对其进行了编译。结果是两个变量a和b被交换了,而实际上并没有发出任何直接命令。 #include

回答 1 投票 2

汇编器消息:错误:尝试将.org向后移动

我正在使用xtensa-esp32-elf-8.2.0工具链进行编译(基于gcc 8)。我还尝试了xtensa-esp32-elf-5.2.0工具链(基于gcc 5)。两者都产生相同的错误...

回答 1 投票 0

多个nop指令的执行时间不一定比单个nop指令的时间长

我正在使用rdtsc在C ++中定时多个NOP指令和单个NOP指令。但是,执行NOP所需的周期数并没有与...

回答 1 投票 0

组装中的位测试后的条件XOR

我正在尝试做一些内联汇编,以在输入b的给定位置测试一点,如果它的a为1,它将用XOR b替换b。我有错误“ bt的操作数大小不匹配”。当我...

回答 1 投票 1

是否有可能在函数中获取由返回值初始化的变量的内存地址?

我一直在研究C语言中的内联汇编以及调用堆栈的工作方式,但是我一直无法弄清是否有可能检索到变量的地址,即...

回答 4 投票 1

如何在ARM cortex M3设备中进行64位分割

我想使用ARM嵌入式汇编程序在ARM cortex M3设备中将64位数字除以32位数字。我尝试将32位数字除以32位数字,其工作正常。我也分享了代码。请...

回答 1 投票 0

导致无前缀的内联汇编错误

[您好,所以,我正在优化我为正在开发的简单操作系统编写的某些功能。该函数putpixel()当前如下所示(以防我的汇编不清楚或错误):...

回答 2 投票 1

C函数不可调用

我正在编写一些我尝试从汇编(nasm)调用的简单C代码。但是,在实际使用汇编代码之前,我已经不了解错误了。这是代码:void start(...

回答 1 投票 0

glibc的atomic_forced_read函数的用途是什么?

我正在尝试了解atomic_forced_read定义的目的,该定义经常出现在malloc.c的GNU libc实现中。对于内联汇编,我不是很好,...

回答 1 投票 4

如何强制使用CMOV在GCC和VS

我有这个简单二进制搜索成员函数,其中lastIndex的,硝石和X 1类成员:UINT32标量(浮动z)的常量{UINT32 LO = 0; UINT32 HI = lastIndex的; UINT32 N =硝石; ...

回答 2 投票 3

x86汇编PUSHAD / POPAD,如何快速它是什么?

我只是想在x86汇编,使基于非常快的计算程序,但我需要调用过程之前推累加器,计数器和数据寄存器。更快手动把他们:推...

回答 1 投票 2

如何编写多联汇编代码在GCC C ++?

这看起来并不友好:__asm(“命令1”“命令2”,“指令3”);难道我真的把一个双引号周围的每一个行?此外...因为多串文字不工作...

回答 2 投票 8

如何使用函数指针从其内存地址调用成员函数?

我正在开发一个旧应用程序的补丁,业主不再拥有src代码。我在main()之前向目标应用程序的.exe中注入了一个dll。这个DLL安装补丁......

回答 2 投票 0

使用内联汇编在数组上循环

当使用内联汇编循环数组时,我应该使用寄存器修饰符“r”还是内存修饰符“m”?让我们考虑一个例子,它添加两个浮点数组x和y并写入结果......

回答 3 投票 5

需要帮助理解位复位功能

我是C的新手,发现很难理解这里的装配级操作。有人可以帮忙吗? / ** *输入:位图 - u32bits * * bitpos - 要位的位置...

回答 2 投票 1

Linux内核模块中x87内联汇编中的操作数类型不匹配

我真的想在Linux内核模块中使用浮点运算,只是为了它。我不想做任何花哨的事情,只需使用x87 trig指令和/或sqrt指令,......

回答 1 投票 4

在DOS中,asm(“fldl%0”...),Intel语法?

我正在研究一个复古项目,试图在Borland Turbo C ++ / DosBox中编译一些测试代码。我有这个函数:double sin(double x){asm(“fldl%0;”“fsin;”“fstpl%0”:“+ m”(...

回答 1 投票 0

写入EBX寄存器最终会导致程序段错误

我有一个奇怪的情况是ebx寄存器在我执行任何写操作时导致段错误。我无法弄清楚为什么。 ebx寄存器有哪些限制我无法使用它?一世 ...

回答 1 投票 1

如何在x86_64上准确地对准未对齐的访问速度

在答案中,我已经声明未对齐访问的速度与对齐访问的速度几乎相同(在x86 / x86_64上)。我没有任何数字来支持这个陈述,所以我创造了一个......

回答 3 投票 5

GCC的MSVC __asm关键字是什么?

我在asm中编写了一个C程序中的代码,我误读了__asm {...}是我需要能够做到的。我后来发现__asm用于MSVC编译器,而不是GCC。是什么 ...

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.