x86-64 相关问题

x86-64是Intel x86架构的64位扩展

使用单个divl指令(i386,amd64)的除法和模数

我试图为gcc内联汇编,以使用单个divl指令获得除法和模数。不幸的是,我不太擅长组装。有人可以帮我吗?...

回答 5 投票 7

仅使用整数寄存器将浮点值从C程序传递到汇编程序级程序?

对于我的班级,我们正在编写一个简单的asm程序(带有C和AT&T x86-64),该程序可打印整数或浮点数的所有位。我的整数部分工作正常。对于我教授的浮动部分,...

回答 1 投票 0

为什么我不能使用int 0x80从指向堆栈存储器的指针sys_write? [重复]

; NASM推30; '0'mov rax,4;写mov rbx,1;标准输出mov rcx,rsp; ptr到堆栈mov rdx,1上的字符;字符串的长度= 1 int 80h上面的代码不会将任何内容输出到stdout。它...

回答 2 投票 2

setdibits为什么在masm汇编中失败

我一直在将位图图像输出到屏幕上,位图是50像素乘50像素,但是当我尝试使用setdibits将位绘制到DDB时,它失败了,然后在上出现了一个黑框。 ..

回答 1 投票 0

x86_64汇编中的递归阶乘问题

我是这种汇编语言的新手,我尝试自己编写以下代码。问题是我的代码无法正确计算数字的阶乘,并且在...

回答 1 投票 0

REX在x86-64 REX前缀中代表什么?

来自Intel的SDM,第2.2.1节指定REX前缀用于:指定GPR和SSE寄存器。指定64位操作数大小。指定扩展控制寄存器,但是字母REX ...

回答 1 投票 2

64位或使用64位寄存器的地址大小覆盖前缀

在汇编寻址(64位)中,哪种方法更好? mov cl,BYTE [ebx + .DATA]或mov cl,BYTE [rbx + .DATA]吗?第一种方式的操作码是:67 8a 4b ..而第二种方式的操作码是:...

回答 1 投票 0

如何使用SSE将__m128i寄存器乘以浮点因子?

我在将两个寄存器相乘时遇到问题(或者只是将寄存器乘以浮点常量)。一个寄存器是__m128i类型,包含一个从16个像素开始的RGBA像素颜色通道(具有16个像素的数组...

回答 1 投票 0

MCS锁实现中的死锁

[硬件:Darwin Kernel版本13.2.0:PDT 2014年4月17日23:03:13; root:xnu-2422.100.13〜1 / RELEASE_X86_64 x86_64 atomics.hpp 1 #ifndef ATOMIC_UTILS_H 2#定义ATOMIC_UTILS_H 3 4#...

回答 1 投票 1

具有多个RET的汇编函数的性能

这样的功能是否会对性能产生负面影响? fn:cmp rdi,0 je lbl0 ... ret lbl0:... ret调用fn这一个吗? fn0:...;无ret,落入fn1:... ret

回答 1 投票 0

GRUB如何在0x100000处加载内核

我正在从头开始编写引导程序和内核,我的目标是创建一个既可以由GRUB也可以由我的引导程序加载的内核。不过,问题不在于内核。我不知道该如何...

回答 1 投票 2

如何在使用-O *时在GCC中禁用RBP帧指针寄存器优化?

当我使用gcc -O2优化程序时,gcc会更改寄存器RBP的值。但是我想将其保留为FRAME BASE REGISTER,该怎么做?问题与以下问题不同:GCC:禁止使用某些...

回答 1 投票 0

“ cmpxchg锁”如何在装配中工作?

[我遇到了这个旧的(GCC在4.8.3之前-错误60272)错误报告https://gcc.gnu.org/ml/gcc-bugs/2014-02/msg01951.html。现在已修复。但是我对此有疑问。我编译了...

回答 1 投票 2

64位bsr asm正在截断高32位

我希望bsr在64位数字上运行。但是,以下内容仅适用于输入的低32位:function BSR64(const Val:Int64):Integer;开始asm bsr eax,[Val] ... ...

回答 1 投票 1

SASM的调试器为什么不显示存储后更新的“结果”变量的值?

我正在尝试在汇编中运行简单的代码-我想将地址保存到内存中。我将地址移到寄存器中,然后将其移入内存,但是由于某种原因,内存不是...

回答 1 投票 2

如何将数据从寄存器移入内存

我正在尝试在汇编中运行简单的代码-我想将地址保存到内存中。我将地址移到寄存器中,然后将其移入内存,但是由于某种原因,内存不是...

回答 1 投票 1

x64似乎不像x86那样接受END指令中的入口点。语法有此更改的任何特定原因吗?

根据MS文档,看来x86和x64程序集具有与END指令相同的语法,即,它们都接受带有此指令的可选入口点[address]。 ...

回答 1 投票 1

在使用elfcore后端加载后如何使用angr运行程序?

我正在尝试使用angr二进制分析库(http://angr.io/)编写python脚本。我已经编写了代码,通过使用...

回答 1 投票 1

无法在模拟器中启动64位(x86_64)android qt应用程序

[我正在尝试在x86_64 Android模拟器(Intel x86 Atom_64系统映像-system-images; android-28; default; x86_64)上的QtCreator(即Qt快速应用程序-空)中运行HelloWorld示例。 ...

回答 2 投票 1

使用CLANG内联汇编创建C ++预递增操作

我正在尝试使b = ++ a;在内联汇编器中运行,但是在执行代码后得到奇怪的变量值。我正在使用clang(与GCC兼容)来编译嵌入式汇编程序。这就是我得到的...

回答 1 投票 1

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