assembly 相关问题

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

在 x86 上发送 IPI 后内存写入是否可见?

我已经阅读了Intel 64 and IA-32 Architectures SDM vol 3A, 9.2 MEMORY ORDERING,但是有一个问题一直困扰着我。 如果我首先写入内存地址,然后发送处理器间

回答 3 投票 0

arm64 ldp指令编码

假设我写以下内容: asm("ldp x0, x0 [x0, #0]!"); 由于寄存器和立即数都是 0,我们可以很容易地看到操作码编码:Godbolt 将其呈现为 0xa9c00000。 ...

回答 1 投票 0

为什么汇编中的add指令看起来会进行隐式的sizeof()转换?

考虑以下 x86 ASM 指令: mov eax, [ebp+StrPointer] 添加 eax, 1 mov [ebp+StrPointer], eax 这里,[ebp+StrPointer]是指向某个堆分配的字符串的指针。显然...

回答 1 投票 0

如何从x86汇编代码调用C语言函数?

我最近正在尝试自学操作系统并玩弄xv6操作系统进行教学。我使用的版本是 GitHub 上的 x86 版本。 我一直在做的是在启动时尝试使用2级分页...

回答 1 投票 0

为什么LDP在使用w寄存器时会崩溃,而使用x寄存器时不会崩溃

在Apply M1的Aarch64程序集上,当将LDP与w 32位寄存器一起使用时,我收到EXC_BAD_ACCESS错误。当我使用 x 64 位寄存器时,不会发生同样的问题。 使用 x 的示例有效

回答 1 投票 0

我如何修复我的代码中Msg3中的显示?

我不知道我应该在代码中更改什么 .型号小 .stack 100h 。数据 Msg1 DB '输入第一个数字:$' Msg2 DB 10, 13, '输入第二个数字:$' Msg3 DB 10, 13, '输入的数字是:$'

回答 1 投票 0

Option 的 Rust 组装<i32>

此代码在 https://gcc.godbolt.org/z/jqEjasPTW 中使用 -C opt-level=3 编译 #[no_mangle] pub fn match1(num: i32) -> i32 { 如果数字 == 10 {99} 否则 {11} } #[no_mangle] pub fn match2(num: 选择...

回答 1 投票 0

在MIPS中反转字符串时加载字节和存储字节问题?

我正在尝试反转汇编中的字符串。我是新手,所以我不知道如何调试。这是当前的代码。 ## $a0 --> 字符串地址 ## $v0 --> 字符串长度 反向字符串: ...

回答 1 投票 0

了解字节顺序和寄存器分配:Little Endian 与 Big Endian

我一直在学习大端和小端架构,发现我的电脑以小端运行。使用一个简单的程序,我将值 0xA000 加载到 ax 寄存器中并观察到...

回答 1 投票 0

为什么我的 fputc 调用继续导致分段错误?

我正在尝试创建一个程序,该程序创建一个新文件并将现有文件的内容复制到其中。我能够打开读取原始文件的内容并将其写入内存,但是当它...

回答 1 投票 0

Z80 CPU 编译器

我是一名工程学院的学生,我在做项目时遇到了一个问题。在这个项目中,我正在设计一个微控制器。我选择使用 Z80 CPU 因为它简单...

回答 1 投票 0

z80 cpu 的 c 编译器

我是一名工程学院的学生,我在做项目时遇到了一个问题。在这个项目中,我正在设计一个微控制器。我选择使用 Z80 CPU 因为它简单...

回答 1 投票 0

有没有办法使用 printf 在 Linux 上的 NASM 汇编中打印递减十六进制数字的水平列表

我本质上想编写一个程序,接受 F 并将其递减直到为 0,显示结果如下:F E D C B A 9 8 7 6 5 4 3 2 1 0。我特别必须使用循环来写出这些结果.. .

回答 1 投票 0

堆栈寄存器保存0x7c00的用途

我在理解代码的幕布部分、它是如何工作的以及操作堆栈寄存器背后的内容时遇到问题。 ;我指的是那部分 mov SS, 斧头 移动sp,0x7c00 我需要一个

回答 1 投票 0

在装配中对此进行评估 (A % B) % (C % D)

包括 Irvine32.inc 包含 Irvine32.lib INCLUDELIB kernel32.lib INCLUDELIB user32.lib 。数据 一个SBYTE 10d; A 是一个 8 位有符号整数 B 字节 2d ; B 是一个 8 位有符号整数 ...

回答 1 投票 0

68000 - 如何从 68000 汇编源代码在 Macintosh Plus 上构建可执行文件?

最近在做java子语言编译器。该编译器提供了68000个汇编文件。我使用easy68k来测试和改进它。现在我想更进一步,在真正的 Macin 上尝试一下...

回答 2 投票 0

有符号个位数十进制数的输入和输出

我的这段代码有问题。 .型号小 .stack 100h 。数据 Msg1 DB '输入第一个数字:$' Msg2 DB 10, 13, '输入第二个数字:$' Msg3 DB 10, 13, '输入的数字是:$'

回答 1 投票 0

输入带符号的一位十进制数的输出

我的这段代码有问题。 .型号小 .stack 100h 。数据 Msg1 DB '输入第一个数字:$' Msg2 DB 10, 13, '输入第二个数字:$' Msg3 DB 10, 13, '输入的数字是:$'

回答 1 投票 0

AVR 组装时钟周期

我将计算时间延迟,所以我需要时钟周期数。该代码总共的时钟周期是多少? .ORG 0 LDI R20,200;将立即数 200 加载到寄存器 R20 中 后退: LDI R25,120; L...

回答 1 投票 0

了解 x86 汇编中 mov 和 lea 指令之间的差异

我试图理解 x86 汇编语言中 mov 和 lea 指令之间的差异。我写了一个简单的汇编代码片段,并添加了注释来解释我的理解......

回答 1 投票 0

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