LINUX.ORG.RU

нужна помощь с od (HEX->DEC)

 


1

2

Привет,

Не могу разобраться с конструкцией:

sudo dd if=/dev/cpu/0/cpuid bs=16 count=8 2>/dev/null | od -j 112 -A n -t u4

После выполнения команды я получаю вот это:

vodka@vodka-PC:~$ sudo dd if=/dev/cpu/0/cpuid bs=16 count=8 2>/dev/null | od -j 112 -A n -t u4
          0   43804591          0 2617245696

Как воспроизвести это, скажем, с ghex? Я делаю вот это:

vodka@vodka-PC:~$ sudo dd if=/dev/cpu/0/cpuid bs=16 count=8 2>/dev/null 1>/tmp/p.txt

Открываю файл с ghex и иду на 113 байт:

00 00 00 AF 67 9C 02 00 00 00 00 00 00 00 9C
https://i.imgur.com/oqieiOg.png

Как из всего этого получить 0 43804591 0 2617245696?

Спасибо.

★★★

Последнее исправление: iljuase (всего исправлений: 1)

и иду на 113 байт:

112 же.

00 00 00 00 AF 67 9C 02 00 00 00 00 00 00 00 9C
VvvvvvvvvvvvvvV (группируем по 4)
00 00 00 00 | AF 67 9C 02 | 00 00 00 00 | 00 00 00 9C
VvvvvvvvvvvvvvV (объединяем в обратном порядке; little endian)
 00000000      029C67AF      00000000      9C000000
VvvvvvvvvvvvvvV (переводим в десятичную)
        0      43804591             0    2617245696
xaizek ★★★★★
()

00 00 00 AF 67 9C 02 = 02 9C 67 AF (у нас ведь x86_64 – Little Endian)

$ python
>>> int(0x29C67AF)
43804591

Дальше сам.

EXL ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.