LINUX.ORG.RU

История изменений

Исправление vova7890, (текущая версия) :

if ( (msg[d] & 0x80) == 0 )

помогло, правда не понял, почему

mov     edx, ds:(msg_ptr - 2A28h)[ebx]
movzx   eax, [ebp+d]
cmp     byte ptr [edx+eax], 0
jns     short loc_F91

как звучит следующее условие?

cmp     byte ptr [edx+eax], 0
jns     short loc_F91

Я понял, если бы было что-то типа:

test eax, eax
jns loc_f91

// x86 асму знаю плохо

Исходная версия vova7890, :

if ( (msg[d] & 0x80) == 0 )

помогло, правда не понял, почему

mov edx, ds:(msg_ptr - 2A28h)[ebx] movzx eax, [ebp+d] cmp byte ptr [edx+eax], 0 jns short loc_F91

как звучит следующее условие? cmp byte ptr [edx+eax], 0 jns short loc_F91

Я понял, если бы было что-то типа: test eax, eax jns loc_f91

// x86 асму знаю плохо