汇编语言(asm)编程问题。请务必使用您正在使用的处理器和/或指令集以及汇编程序。警告:对于.NET程序集,请改用标签[.net-assembly]。对于Java ASM,请改用标签[java-bytecode-asm]。
我已经阅读了Intel 64 and IA-32 Architectures SDM vol 3A, 9.2 MEMORY ORDERING,但是有一个问题一直困扰着我。 如果我首先写入内存地址,然后发送处理器间
假设我写以下内容: asm("ldp x0, x0 [x0, #0]!"); 由于寄存器和立即数都是 0,我们可以很容易地看到操作码编码:Godbolt 将其呈现为 0xa9c00000。 ...
为什么汇编中的add指令看起来会进行隐式的sizeof()转换?
考虑以下 x86 ASM 指令: mov eax, [ebp+StrPointer] 添加 eax, 1 mov [ebp+StrPointer], eax 这里,[ebp+StrPointer]是指向某个堆分配的字符串的指针。显然...
我最近正在尝试自学操作系统并玩弄xv6操作系统进行教学。我使用的版本是 GitHub 上的 x86 版本。 我一直在做的是在启动时尝试使用2级分页...
为什么LDP在使用w寄存器时会崩溃,而使用x寄存器时不会崩溃
在Apply M1的Aarch64程序集上,当将LDP与w 32位寄存器一起使用时,我收到EXC_BAD_ACCESS错误。当我使用 x 64 位寄存器时,不会发生同样的问题。 使用 x 的示例有效
我不知道我应该在代码中更改什么 .型号小 .stack 100h 。数据 Msg1 DB '输入第一个数字:$' Msg2 DB 10, 13, '输入第二个数字:$' Msg3 DB 10, 13, '输入的数字是:$'
此代码在 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: 选择...
我正在尝试反转汇编中的字符串。我是新手,所以我不知道如何调试。这是当前的代码。 ## $a0 --> 字符串地址 ## $v0 --> 字符串长度 反向字符串: ...
了解字节顺序和寄存器分配:Little Endian 与 Big Endian
我一直在学习大端和小端架构,发现我的电脑以小端运行。使用一个简单的程序,我将值 0xA000 加载到 ax 寄存器中并观察到...
我正在尝试创建一个程序,该程序创建一个新文件并将现有文件的内容复制到其中。我能够打开读取原始文件的内容并将其写入内存,但是当它...
我是一名工程学院的学生,我在做项目时遇到了一个问题。在这个项目中,我正在设计一个微控制器。我选择使用 Z80 CPU 因为它简单...
我是一名工程学院的学生,我在做项目时遇到了一个问题。在这个项目中,我正在设计一个微控制器。我选择使用 Z80 CPU 因为它简单...
有没有办法使用 printf 在 Linux 上的 NASM 汇编中打印递减十六进制数字的水平列表
我本质上想编写一个程序,接受 F 并将其递减直到为 0,显示结果如下:F E D C B A 9 8 7 6 5 4 3 2 1 0。我特别必须使用循环来写出这些结果.. .
我在理解代码的幕布部分、它是如何工作的以及操作堆栈寄存器背后的内容时遇到问题。 ;我指的是那部分 mov SS, 斧头 移动sp,0x7c00 我需要一个
包括 Irvine32.inc 包含 Irvine32.lib INCLUDELIB kernel32.lib INCLUDELIB user32.lib 。数据 一个SBYTE 10d; A 是一个 8 位有符号整数 B 字节 2d ; B 是一个 8 位有符号整数 ...
68000 - 如何从 68000 汇编源代码在 Macintosh Plus 上构建可执行文件?
最近在做java子语言编译器。该编译器提供了68000个汇编文件。我使用easy68k来测试和改进它。现在我想更进一步,在真正的 Macin 上尝试一下...
我的这段代码有问题。 .型号小 .stack 100h 。数据 Msg1 DB '输入第一个数字:$' Msg2 DB 10, 13, '输入第二个数字:$' Msg3 DB 10, 13, '输入的数字是:$'
我的这段代码有问题。 .型号小 .stack 100h 。数据 Msg1 DB '输入第一个数字:$' Msg2 DB 10, 13, '输入第二个数字:$' Msg3 DB 10, 13, '输入的数字是:$'
我将计算时间延迟,所以我需要时钟周期数。该代码总共的时钟周期是多少? .ORG 0 LDI R20,200;将立即数 200 加载到寄存器 R20 中 后退: LDI R25,120; L...
我试图理解 x86 汇编语言中 mov 和 lea 指令之间的差异。我写了一个简单的汇编代码片段,并添加了注释来解释我的理解......