div dword ptr ds:[ecx+24] 什么意思?
divdwordptrds:[ecx+24]什么意思?OD的寄存器是:EAX80003FDBECX1E3C0678edx00000000ebx00000019esp1b3...
div dword ptr ds:[ecx+24] 什么意思?
OD 的寄存器是:
EAX 80003FDB
ECX 1E3C0678
edx 00000000
ebx 00000019
esp 1b36fe48
esi 80003fdb
edi 03d28dc0
div dword ptr ds:[ecx+24] 什么意思?
只知道是除法运算,但却不知道是谁除谁,PTR 、DS 、ECX、DWORD 又分别代表什么?又有什么关系呢?
又如何分别是字节除,还是字除呢?
被除数高32位(是高于32位吗?那包含32位吗?)
被除数低32位(是低于32位吗?包含32位吗?) 展开
OD 的寄存器是:
EAX 80003FDB
ECX 1E3C0678
edx 00000000
ebx 00000019
esp 1b36fe48
esi 80003fdb
edi 03d28dc0
div dword ptr ds:[ecx+24] 什么意思?
只知道是除法运算,但却不知道是谁除谁,PTR 、DS 、ECX、DWORD 又分别代表什么?又有什么关系呢?
又如何分别是字节除,还是字除呢?
被除数高32位(是高于32位吗?那包含32位吗?)
被除数低32位(是低于32位吗?包含32位吗?) 展开
1个回答
展开全部
div 默认使用edx和eax寄存器,即所谓的隐含寻址方式。
edx.eax / ds:[ecx+24] => eax
被除数高32位在EDX中,低32位在EAX中,除数就是ds:[ecx+24]存储单元中的32位值,运算结果商也会存放在eax中。
PTR:取地址
DS:数据段段寄存器
ecx:计数寄存器
DWORD:双字,即32位值
dword ptr ds:[ecx+24]是指:数据段中地址偏移ecx+24的存储单元中的32位值。
div指令的操作数如果是8位,就是字节除;操作数是16位就是字除。
高32位和低32位是对于一个64位数而言的。对于双字除来说,被除数是一个64位数,用edx和eax两个32位寄存器共同存储。
edx.eax / ds:[ecx+24] => eax
被除数高32位在EDX中,低32位在EAX中,除数就是ds:[ecx+24]存储单元中的32位值,运算结果商也会存放在eax中。
PTR:取地址
DS:数据段段寄存器
ecx:计数寄存器
DWORD:双字,即32位值
dword ptr ds:[ecx+24]是指:数据段中地址偏移ecx+24的存储单元中的32位值。
div指令的操作数如果是8位,就是字节除;操作数是16位就是字除。
高32位和低32位是对于一个64位数而言的。对于双字除来说,被除数是一个64位数,用edx和eax两个32位寄存器共同存储。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询