- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我目前正在学习汇编 8086。有些命令适用于 ax 而有些则不适用。例如: mov [ax], 5 不起作用。为什么会这样?bx 寄存器相对于 ax 寄存器有哪些优势?提前致谢。
最佳答案
bx
的主要优势在 ax
是它可以被称为指向数据段中地址的指针。
您不能使用 ax
在有效地址中:
MOV cx, [ax] ;doesn't work
MOV cx, [bx] ;works fine and loads cx with the value which is pointed by bx
可以作为指针引用的寄存器有:
bx
, si
, di
, bp
那些不能被称为指针的:
ax
, cx
, dx
, sp
这是 16bit addressing modes 的限制.另见 x86标记维基。
ax
在数学运算方面具有优势,因为一些函数如 mul
隐式使用它。
mul cx
将 ax 乘以 cx 并将结果存储在 dx:ax
中.在 386 或更高版本上,您可以使用例如 imul bx, cx
做bx *= cx
.它是一个更长的操作码,并且只产生乘法结果的低半部分(无论有符号还是无符号,结果都是一样的,这就是为什么没有两个或三个操作数形式的 mul
)。
div
和 idiv
只有除 dx:ax
的单操作数形式通过源操作数,将结果存储在 dx 和 ax 中。
8086还需要ax
比后来的 CPU 更多的东西,因为它没有 movsx
,因此您需要将字节放入 al
运行 cbw
.
关于assembly - bx 在哪些方面优于 ax,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36035999/
这显然是不寻常的 AX 问题的一周。我在 AX 中有自定义的、与公司无关的表,在第一个 View 中总是显示一个特定的记录。如果您从表单访问它们、直接查看表等,就会发生这种情况。 打开使用故障表之一作
This question already has answers here: How many memory barriers instructions does an x86 CPU have?
Dynamics AX 的新手,如何获取特定 wmslocation 中的所有项目以及 b/w wmslocation 和inventTable 的关系是什么? 最佳答案 执行此操作的最简单方法是为该
from datetime import datetime fig=plt.figure() ax=fig.add_subplot(1,1,1) data=pd.read_csv(r"C:\Users
我正在拼命寻找 Dynamics AX 2009 数据库图表。有人有吗? 谢谢 最佳答案 有关 AX 2009 中的表列表,请参阅 MSDN 文档 Dynamics AX 2009 Tables 要创
我正在寻找一种方法来启用某些表的日志记录更改。 我已经尝试并测试了以编程方式将表添加到数据库日志中,但到目前为止取得了各种成功 - 有时它有效,有时它不起作用(大多数情况下它不起作用) - 似乎只是将
from datetime import datetime fig=plt.figure() ax=fig.add_subplot(1,1,1) data=pd.read_csv(r"C:\Users
我正在学习如何从 osdev 制作引导加载程序。我正在使用 NASM 来组装我的代码,并使用 x86 机器来运行我的引导加载程序。这是一段打印字符并进入无限循环的代码: BITS 16 xor ax,
我正在拼命寻找 Dynamics AX 2009 数据库图表。有人有吗? 谢谢 最佳答案 有关 AX 2009 中的表列表,请参阅 MSDN 文档 Dynamics AX 2009 Tables 要创
“该元素没有原点值。该元素必须有一个非空的原点值。” 我使用Wizard Wizard(微软在这个名字上没有获得任何创意点数..)来创建一个新的Wizard,这个最佳实践错误是在系统生成的表单中。 最
下面两行有什么区别? mov ax, bx mov ax, [bx] 如果bx包含值100h,并且内存地址100h处的值是23,那么第二个是否将23复制到ax? 另外,下面两行有什么区别? mov a
我正在查看程序的反汇编(因为它崩溃了),并注意到很多 xchg ax, ax 我用 google 搜索了一下,发现它本质上是一个 nop,但为什么 Visual Studio 会执行 xchg
任何人都可以向我解释以下行为吗? 当 AX 表中的字段类型设置为枚举时,您可以选择任何枚举值作为该字段的值。 但是,如果您将该字段设置为必填,则无法再通过用户界面选择列表中的第一个枚举值。 显然,这可
有人可以解释一下这三个指令的功能吗? ORG 1000H MOV AX,CS MOV DS,AX 我知道理论上的代码、数据和额外段是什么,但是: 在这个程序中它们是如何实现的? 为什么整个
import matplotlib.pyplot as plt fig, ax = plt.subplots() plt.getp(ax) 为什么ax.patch没有列在plt.getp(ax)的输
我这里有一个小众问题,我找不到任何特定于此的指南。我想知道是否有人知道如何正确处理 matplotlib 包中轴标签的以下文本: ax.set_xlabel(r'$1.005116" per pixe
我正在尝试查找应用程序对象中使用标签的位置。 在标签编辑器中有一个按钮 Used By应该执行此功能。但是,它只会打开一个空对话框。 在此之前是否需要先设置某种索引? 最佳答案 是的,您需要从这里更新
Axapta 中是否有类似于 C# 中著名的 toString() 方法? 我尝试运行底层代码: info(this.dataSource()); 但它给了我这个错误消息:“参数'txt'与所需的类型
我想知道如何使用 C# (.Net Business Connector) 从 AX 调用内核函数。 具体来说,你可以调用像 fieldName2Id、tableName2Id 和 curUserId
在 Matlab 中求解方程最耗时的方法是什么: exp(ax)-ax+c=0 a 和 c 是常量,x 是我要查找的值?目前我正在使用内置的求解器函数,我知道解是单值的,但它花费的时间比我想要的要长。
我是一名优秀的程序员,十分优秀!