Что означает значение с e` в windbg

Я использовал windbg для анализа аварийного дампа, для одной из переменных типа unsigned long long, в локальных переменных я вижу, что ее значение равно 0x002a002e`002a0000. Что означает значение до и после e. И что означает e(acute)?

введите здесь описание изображения


person Farhan Ahmed    schedule 13.02.2021    source источник
comment
e — шестнадцатеричная цифра. Символ после него является группирующим символом, используемым для облегчения чтения полного 16-значного числа (например, запятая или точка для больших десятичных чисел). В противном случае вы бы увидели 0x002a002e002a0000.   -  person 1201ProgramAlarm    schedule 13.02.2021


Ответы (1)


Формат описан в номерах MASM и операторы. Итак, e — это точно так же, как a часть шестнадцатеричного числа. 64-битное шестнадцатеричное число разделено на две 32-битные части ударением для удобства чтения. Использование акцента может иметь дополнительные последствия, как указано в определениях для подписать расширение.

При всем при этом значение 002a002e002a0000 очень похоже на строку UTF16 *.*. Так что, возможно, у вас где-то было переполнение буфера.

0:000> .dvalloc 1000
Allocated 1000 bytes starting at 000001d6`4a4c0000
0:000> eq 000001d6`4a4c0000 002a002e002a0000
0:000> dq 000001d6`4a4c0000 L1
000001d6`4a4c0000  002a002e`002a0000
0:000> du 000001d6`4a4c0000 + 2
000001d6`4a4c0002  "*.*"
person Thomas Weller    schedule 17.02.2021