これをGDBで理解しようとしていますが、次のように表示されます。
(gdb) print/t $eax
$2 = 1000000001001010000000011010
(gdb) x/4xb $eax
0x804a01a <testinput>: 0x41 0x42 0x43 0x44
これは本質的にASCII値「ABCD」です。これらの値を一度に1バイト取得したいので、$alの最初のバイトを取得することから始めようとしました。ただし、$alには0x1aが含まれています。
まず、バイナリ1000000001001010000000011010は0x41 0x42 0x43 0x44とどのように等しくなりますか?(0x41は0100 0001に等しいと思いますが、上記のパターンは表示されません)次に、$ alに0x1aが含まれているのはなぜですか?