assembly 相关问题

汇编语言(asm)编程问题。请务必使用您正在使用的处理器和/或指令集以及汇编程序。警告:对于.NET程序集,请改用标签[.net-assembly]。对于Java ASM,请改用标签[java-bytecode-asm]。

在机器代码中打印字符串时出现分段错误

我正在编写一个机器代码程序,用于在 64 位 Linux 中将字符串打印到终端。这是我的代码: 00000000: 7f45 4c46 0201 0103 0000 0000 0000 0000 .ELF............ 00000010: 0200 3e00 0100 0...

回答 1 投票 0

记住 x86-64 System V arg 寄存器顺序的最佳方法是什么?

我经常忘记系统调用中每个参数需要使用的寄存器,每次我忘记时我都会访问这个问题。 整数/指针参数到 x86_64 用户空间函数的正确顺序...

回答 2 投票 0

rsp 堆栈指针在返回函数调用的值时有任何用处吗?

我知道有几种方法可以在汇编中返回值, 在 rax 寄存器中 在xmm0、xmm1寄存器中 在堆栈中(类似于 C++ 中的返回优化),有时使用 rdi 寄存器来保存...

回答 1 投票 0

PIC 18F8722 组件中的 subwfb

我有一个变量 temp2,它被分配为 00001101(13),并且我已将 00001010(10) 移至 wreg。 (顺便说一句,所有这些寄存器都会在 MPLAB x 调试器会话中逐步检查。)然后,我执行

回答 1 投票 0

缓冲区是保留还是从堆栈中弹出

只是一个简单的问题,假设我们有以下 C 代码 int你好(){ 字符数组[16]; scanf("%s",arr); printf("%s",arr); 返回0; } 我怀疑当 arr 数组是

回答 1 投票 0

arm cortex-a53从el3安全切换到el1非安全问题

我正在尝试从EL3安全状态切换到EL1非安全状态。如果我不更改安全状态,只执行从EL3到EL1的切换,如下所示: el1_entry_aarch64: 诺普 诺普 ...

回答 1 投票 0

x86 ASM 代码不打印所需的数字输出,仅打印消息

我试图找到给定三个数字的最小和最大数字。 这是我目前的代码: 节.文本 global _start ;必须声明才能使用 gcc _开始:...

回答 1 投票 0

组装检查三个数中最大的一个

我现在正在学习汇编,我有一个很大的问题需要解决。 (顺便说一句,我使用 x86_64 nasm 程序集) 到目前为止,我已经做到了这一点 .bss 节 结果:resb 10 .data 节 num1: 数据库'22' ...

回答 2 投票 0

汇编语言8086

我在使用Assembly 8086时遇到问题。我不知道如何使用二维数组。当我这样使用时 mov ar[cx][dx] 我收到一个错误,当我想在数组中使用 SI 和 DI 时,它也会返回一个错误。

回答 4 投票 0

编译器到底如何将 AST 转换为汇编指令

我或多或少对编译器如何将 AST 转换为机器代码感到困惑。我的假设是一些编译器遍历树并用相应的汇编指令替换每个节点......

回答 1 投票 0

堆栈大小的使用上限有没有限制?

我正在使用x86指令集编写程序。为什么当我使用存储在大小为 40kb 的堆栈中的本地数组时它会崩溃。 我使用带有 i5 处理器的 windows7 操作系统并在 Visual C++ 中编译

回答 2 投票 0

Irvine32 和 MASM

我需要一些帮助来将 Irvine32 inc/lib 支持添加到我的 asm 程序中。我将 inc/lib 添加到他们的文件夹中并添加 包括 Irvine32.inc includeLib Irvine32.lib 但我在链接时遇到错误

回答 4 投票 0

有人可以帮我理解这段 x86 程序集吗?

我需要使用 intrincics 将一段代码转换为 SIMD。 所以我首先查看了当时非 SIMD 代码的反汇编。 我发现编译器似乎做了一些我不明白的技巧。 这...

回答 1 投票 0

尝试在多项目 Visual Studio 解决方案中导入和使用不同项目的方法

我认为仅使用项目参考就可以很容易地做到这一点,但我相信我错过了一个步骤。我非常不熟悉使用多项目解决方案,感谢任何帮助! ...

回答 2 投票 0

无法打印出来

我使用 NASM 作为汇编器 所以,我尝试让程序打印出“hello world”这个词,但它没有 我按照调用约定提出了所有参数。正如它所说,第一个参数是 rcx,第二个......

回答 1 投票 0

CPUID:为什么某些功能必须将 MISC_ENABLE.LCMV 设置为 0?可以暂时覆盖吗?

我正在尝试使用CPUID,但有一些附加条件。根据 sandpile.org 的 CPUID 页面,CPUID 标准函数 0000_0004h 及以上仅在设置 MISC_ENABLE.LCMV 标志时才起作用...

回答 2 投票 0

如何在64位应用程序中从反汇编代码中获取对象?

我有可以在内存区域中找到字节序列的模式。 0x74、0x26、0x48、0x8B、0x05、0、0、0、0、0x48、0x8D、0x0D、0、0、0、0 其中0——可以用任何字节填充。 效果很好。

回答 1 投票 0

如何在x86-64位应用程序中从反汇编代码中获取对象?

我有可以在内存区域中找到字节序列的模式。 0x74、0x26、0x48、0x8B、0x05、0、0、0、0、0x48、0x8D、0x0D、0、0、0、0 其中0——可以用任何字节填充。 效果很好。

回答 1 投票 0

Python 中平方所需的时间

我想知道 x**2 还是 x*x 更快 def sqr(x): 对于范围 (20) 内的 i: x = x**2 返回x def sqr_(x): 对于范围 (20) 内的 i: x = x*x 返回x 当我计时时,...

回答 1 投票 0

如何在64x位应用程序中从反汇编代码中获取对象?

我有可以在内存区域中找到字节序列的模式。 0x74、0x26、0x48、0x8B、0x05、0、0、0、0、0x48、0x8D、0x0D、0、0、0、0 其中0——可以用任何字节填充。 效果很好。

回答 1 投票 0

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