No wiki, "big-endian" refere-se à ordem de armazenamento de vários bytes.
E um byte consiste em 8 bits, também é importante observar a ordem desses bits.
Eu fiz dd if=/dev/sda count=1 | xxd -b
e descobri que os bytes são armazenados na direção crescente oposta do endereço:
01100011
(o endereço inferior está à esquerda, enquanto esse byte é caractere ascii'c ') Parece ser um "big endian" em nível de bit.
como explicar esse fenômeno estranho?
Respostas:
xxd
transforma cada byte lê-se em um {hexadecimal, binário, octal} número e impressões que, não uma representação de como disse byte foi representado na memória ou em outro lugar. Todos os esquemas de escrita de números com os quais estou familiarizado são big-endian, e é isso que você recebe.fonte
Os bits são apresentados apenas em uma ordem para exibição. Eles não são armazenados em nenhuma ordem específica dentro do computador. A exceção seria casos em que os bits são endereçáveis individualmente dentro do processador. Em todos esses casos, 0 refere-se ao bit menos significativo.
Como os
xxd
bits de exibição não tem nada a ver com a maneira como eles são armazenados.fonte