腾讯云
开发者社区
文档
建议反馈
控制台
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
登录/注册
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
(9999+)
视频
沙龙
1
回答
计算Intel 8086的
标志
值
c#
、
flags
、
x86-16
我正在为Intel8086实现一个模拟器,我想知道如何计算进位
标志
,溢出
标志
,辅助进位
标志
。 我知道每个位代表什么(进位
标志
指示是否从第7
位
溢出,等等)。但是,如何使用C#实现这一点呢?例如,在进位
标志
和加法
指令
的情况下,我简单地检查加法后的值,如果它超过0xFF,则
标志
被提升。但在某些情况下,这会给出不正确的值。我已经读到了一些我应该检查
位
7的地方,如果它在加法之前被设置,在加法之后被清除,那么就存在进位。但是这给出了像
SU
浏览 0
提问于2013-10-22
得票数 1
2
回答
ARM算术加法和
标志
更新
assembly
、
arm
在整数ADD和
SUB
指令
的解释中,给出了计算结果后
标志
更新的表格。我不能理解的是2个整数A,B的无符号整数加法的
标志
更新,其中A和B“不都是0”,结果是2^31-1 < result < 2^32(即在0x7FFFFFFF,0x100000000之间)EQ = No, NE = Yes, CS = No, CC = Yes, MI = Yes, PL = No, VS, VC=
浏览 0
提问于2011-07-05
得票数 3
回答已采纳
1
回答
在英特尔的SDM手册中,“根据结果设定”意味着什么?
assembly
、
x86
、
x86-64
、
eflags
以下是我在用于的Intelx86-64文档和许多其他说明(包括,因此将neg x的
标志
理解为取决于此)中看到的内容。根据结果设置OF、SF、ZF、AF和PF<code>E 214</code>
标志
。 我假设sf = dest < 0,zf = dest == 0,但不知道其他
标志
是如何设置的。我看到这个“根据结果设置”短语到处都是,希望您能帮助我理解“相应地”设置
标志
的确切含义。
浏览 3
提问于2016-11-08
得票数 5
回答已采纳
1
回答
GCC没有利用公司
optimization
、
gcc
、
assembly
、
x86-64
、
gcc4.8
不会生成inc程序集
指令
,在其中它实际上可能很有用,例如在这个C程序中:{ int i;1000000000L; i++) <---- that "i++" return sum;相反,它生成一个add
指令
gcc -Os确实会生成一个inc
指令
。使用inc不是更像是速度优化而不是空间优化吗?
浏览 0
提问于2013-11-10
得票数 7
回答已采纳
2
回答
是否可以在没有“jump”的情况下使用程序集中的条件跳转?
assembly
、
x86
mov ah, [.version + bx] jne .ver_err jl .ver我最初认为它是基于cmp al, ah的,但是jne跳起来了,如果不是相等的话。
浏览 0
提问于2018-01-07
得票数 6
回答已采纳
1
回答
Z80中的AND操作是如何溢出的?
cpu
、
flags
、
z80
它在“受影响的条件
位
”部分指出,如果操作溢出,则设置P/V
标志
。我可以理解add或
sub
指令
是如何溢出的,但这对我来说没有任何意义。感谢您的帮助!谢谢!
浏览 3
提问于2012-11-25
得票数 1
回答已采纳
1
回答
为什么cmp 0x84,0x30会触发溢出
标志
?
x86
、
assembly
然后,该
指令
触发溢出
标志
。 根据我所读到的,CMP应该从第一个数字中减去第二个数字,然后设置
标志
,在这种情况下,它应该是0x84-0x30,结果是0x54,没有溢出。
浏览 3
提问于2011-09-01
得票数 11
回答已采纳
2
回答
游戏男孩:半携带
标志
和16
位
指令
(特别是操作码0xE8)
assembly
、
embedded
、
emulation
、
cpu-architecture
、
gameboy
和很多其他人一样,我正在编写一个游戏男孩模拟器,我有几个关于0xE8
指令
的问题(ADD SP, n有一个8
位
的即时
指令
)。声称,在16
位
指令
中,如果从第7
位
到第8
位
出现进位,则设置半进位
标志
,而则说半进位
标志
表示从第11
位
到第12
位
的进位。在中,这个问题似乎有点混乱,(我听说) 似乎也没有什么可说的。我的问题如下: 操作码0xE8
浏览 2
提问于2019-09-16
得票数 15
回答已采纳
6
回答
x86程序集: INC和DEC
指令
和溢出
标志
c
、
assembly
、
x86
、
x86-64
、
inline-assembly
在x86程序集中,在有符号整数溢出的add或
sub
操作时设置溢出
标志
,对无符号整数溢出的操作设置进位
标志
。但是我找不到任何关于inc和dec如何影响溢出
标志
的信息。 当发生整数溢出时,inc或dec是否设置溢出
标志
?这种行为对有符号整数和无符号整数都是一样的吗?============================= 编辑 ===============
浏览 8
提问于2010-10-13
得票数 18
回答已采纳
1
回答
注册AL和AX溢出到哪里?
assembly
、
x86
、
cpu-registers
、
integer-overflow
、
ctf
我们已经将寄存器EAX的所有
位
设置为0,因此我们也将AH、AL和AX设置为0。但是当我减去最低的AL
位
时,我们将取两个的补码并加,给我们一串1s,然后是0。XOR eax, eax总之,我的问题是,在执行上面的代码时,just EAX.是充满了1s,还是也会传递给 AX 和EAX.?
浏览 2
提问于2019-10-03
得票数 3
回答已采纳
2
回答
x86程序集:在没有溢出和分支的情况下添加/
SUB
/INC/DEC
assembly
、
integer-overflow
我的想法是这样的(作为溢出
标志
):add eax,OFdec axxor ah,ah 有没有更好的方法来做到这一点,也许也适用于更一般的情况?
浏览 0
提问于2015-07-11
得票数 1
回答已采纳
1
回答
装配- I/O控制器(键盘驱动程序)
assembly
我没有理解这个
指令
:test AL, 80H,目的是什么,以及它如何检查,通过这种方式,PA7=0? 编辑:我也很高兴对key_down_loop部分进行解释。我们为什么要这么做?
浏览 5
提问于2012-03-09
得票数 0
1
回答
由于汇编语言中的MUL
指令
,ZF没有设置
assembly
、
x86
、
masm
、
irvine32
、
eflags
我正在编写32
位
汇编程序。在程序中,我试图设置零
标志
作为mul
指令
的结果,但它不起作用。 call dumpregs call dumpregs call dumpregs
sub
浏览 0
提问于2014-09-18
得票数 1
回答已采纳
1
回答
CF(进位
标志
)是如何根据计算t= a-b来设置a和b是无符号整数的?
bit-manipulation
、
x86-64
、
instructions
、
instruction-set
我正在读一本教科书,上面写着:Q1-假设我们使用一个add
指令
来执行与C赋值t= a+b等价的操作,其中变量a、b和t是整数(为简单起见只有3
位
),那么对于011(a) + 101(b) = 1000 = 000,因为我们在第四个数字中有一个执行
位
1,所以CF
标志
将被设置为1,我的理解是正确的吗?Q2-如果我对Q1的理解是正确的,那么假设我们使用一个子
指令
来执行相当于C赋值t=
s
浏览 1
提问于2020-07-10
得票数 0
回答已采纳
1
回答
解释x86
指令
中AF
标志
的工作原理?
c
、
assembly
、
x86
、
x86-16
我有一个小的8086模拟器,我有一个长期存在的bug,大约2年了,现在AF在
sub
中不能正常运行,并添加
指令
。我目前计算它的值的方法是8
位
数字和减法:base=base&0xF; flags.af=1; flags.af=0;(
浏览 0
提问于2010-12-23
得票数 5
回答已采纳
1
回答
X86上的子
指令
和受影响
标志
:可以设置SF != CF吗?
assembly
、
x86
、
eflags
由于文档并没有真正描述
标志
是如何受到影响的,所以我无法确定子
指令
期间进位
标志
和有符号
标志
之间的区别,似乎每当
sub
a, b中的a<b同时设置进位
标志
和签名
标志
时。在子
指令
过程中,是否会设置签名
标志
而不带进位(反之亦然)?
浏览 3
提问于2016-04-18
得票数 1
回答已采纳
2
回答
BT无效
指令
操作数
assembly
、
x86
(257):错误A2070:无效的
指令
操作数bt/bts/btr/btc
指令
仅处理16或32
位
操作数。如果第一个操作数是内存位置,则无论索引的值是什么,bt
指令
都会测试内存中给定偏移量的
位
浏览 0
提问于2014-03-12
得票数 0
1
回答
向具有
指令
支持的高速缓存线添加额外
标志
caching
、
tags
、
riscv
我希望在当前版本的Rocket芯片的两个缓存的缓存线中都包含
标志
。这些
标志
将与数据一起加载/存储在存储器地址处。lowRISC ()开发人员也做了类似的事情。然而,它们访问加载/存储
标志
和数据作为单独的
指令
(即
指令
存储/加载
标志
和存储/加载数据的现有
指令
),并且它们的体系结构设计是从旧版本的火箭芯片派生的,火箭芯片源代码从那时起发生了重大变化。在我的例子中,不知何故,
标志
没有得到正确的传播。增加高速缓存线大小、将
浏览 3
提问于2015-09-19
得票数 1
1
回答
对于x86-64
指令
,代码段描述符中的D
标志
是做什么的?
windows
、
assembly
、
x86-64
、
intel
、
memory-segmentation
它是在代码段描述符的D/B
位
22中设置的,如下图所示:Intel文档(来自部分)声明如下:根据段描述符是可执行代码段、(对于32
位
代码和数据段,此
标志
应始终设置为1,对于16
位
代码和数据段,则设置为0。) 可执行代码段。该
标志
称为D
标志
,它指示段中
指令
引用的有效地址和操作数的默认长度。如果设置了
标志
,则假定32<
浏览 0
提问于2018-07-13
得票数 1
回答已采纳
1
回答
为什么在循环中使用跳转时没有必要使用cmp?
assembly
、
x86
int a = 0; { mov ecx, 4 inc eax
sub
浏览 1
提问于2017-01-03
得票数 2
回答已采纳
点击加载更多
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
STEP 7 中批量位复位/置位指令介绍
通过调试游戏,了解64位汇编指令
PLC重要的一些位逻辑指令,速度GET
是位天才少女,《平行宇宙2》曝九个蜘蛛标志
从Sub-6GHz到毫米波&amp从原型验证到量产测试,NI双维度全面布局助力抢位5G时代
热门
标签
更多标签
云服务器
ICP备案
实时音视频
即时通信 IM
对象存储
活动推荐
运营活动
广告
关闭
领券