问题标签 [addressing-mode]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
assembly - 寄存器寻址模式与直接寻址模式
我在试卷中遇到过这个问题。它指出,哪种给定的寻址模式更快?为什么?
- 寄存器寻址方式
- 直接寻址方式
现在根据我的说法,寄存器寻址模式应该更快,因为寄存器是计算机中最快的内存位置。这是正确的答案吗?
请帮忙。谢谢
assembly - mov eax, [ebx+ecx*4] 在 NASM 中是什么意思?
我刚开始学习汇编,对以下表达式感到困惑。
数据将从哪个地址移动到 eax?
而且我不明白 [ebx+ecx*4] 中地址的计算结果是什么?
assembly - 操作码中的汇编段
我注意到在程序集段中使用了操作码。
例子:
我认为“PTR SS:”用于指定 EBP-30 来自堆栈?(SS:堆栈段)我是对的还是完全错的?:) 而且,你能告诉我上面的例子和
那么操作码中使用的 DS(数据段)呢?
assembly - 8086 程序集 ADD 寻址模式
您好,我正在为 8086 编写汇编代码,但我想知道 CPU 如何区分例如
AND AX, [memoryaddress] 和 AND AX, memoryaddress
我们在它周围加上 [] 表示它应该被地址内容替换,但是 CPU 看到这样的指令
00 01 1101001
它如何知道它应该添加值 1101001 还是地址 1101001 的内容。
我在想有不止一个 ADD 命令,并且它们的操作码不同,例如(ADDTHECONTENTS 和 ADDTHEVALUE),但是 a86 允许我们只说 ADD,因为我们可以很容易地将语义与 [] 语法区分开来。这似乎合乎逻辑,但我不确定,所以我想问一下,是否有许多操作码用于对应于不同寻址模式的指令。
assembly - NASM 宏处理任何寻址模式
编写一个 NASM 宏:divide,它有 2 个参数,指定任何寻址模式下的无符号整数。宏计算其第一个参数的上限,除以第二个参数,并将结果放入寄存器 edx。如果第二个参数为 0(要在运行时测试),则结果应为 0,并且应将消息“除以零”打印到标准输出。
我怎么知道哪个是哪个,所以我们可以处理每个案例?(;地址模式是:寄存器、内存和立即数。)
编辑:这是我写的最终代码:如何编写没有标签的代码?(位置独立代码):
assembly - @登录汇编程序?
我正在为信息系统课程做作业,教授决定使用伪汇编程序。他用
在
那个符号是什么意思?
assembly - 一个奇怪的汇编代码:cmp ebp, ds:dword_84B8844
我使用 IDAPro 反汇编一个 elf 文件。在函数 sub_8210884 中,我注意到一些奇怪的代码:
sub_8049DB6:
sub_8210884:
什么意思?我猜它是对 sub_8049DB6 中的局部变量的引用,但不确定。
这是完整的汇编代码:
assembly - Masm32 - 寻址模式和数组
我对寻址模式有点困惑。
如果我有这个声明:
EBX 是基数,EDI 是索引,+10 是说向 EDI 添加十个字节?那么,EDI 会返回 14 个字节长吗?并返回地址并将其放入EAX?
同样,
这是说在数组中的任何索引处,返回 4 个字节长吗?因为每个索引的数组长度为 4 个字节,对吧?我想我不明白 * 4 是做什么的!
此外,
这会将数字 100 放入从索引零开始 4 字节大的数组中?那么,索引[0] = 100,索引[1]= 101,索引[2]= 102?
谢谢
arrays - x86 - 访问数组中元素的寻址模式
我正在努力学习汇编语言。有人可以解释和/或举例说明如何使用寻址模式来访问以下每种数组类型中的元素吗?
数组
DWORD
结构数组,其中每个结构包含两个
DWORD
s数组数组,其中每个数组有 10
DWORD
秒
assembly - x86指令含义
我现在正在 gdb 上运行一些代码,但我不知道这两条指令实际上是做什么的。如果有人可以帮助我,我将不胜感激。