BYTE
Estou tentando responder a essa pergunta da perspectiva do C ++.
O padrão C ++ define 'byte' como “unidade endereçável de dados grande o suficiente para conter qualquer membro do conjunto de caracteres básicos do ambiente de execução”.
O que isso significa é que o byte consiste em pelo menos bits adjacentes suficientes para acomodar o conjunto de caracteres básico para a implementação. Ou seja, o número de valores possíveis deve ser igual ou superior ao número de caracteres distintos. Nos Estados Unidos, os conjuntos de caracteres básicos são geralmente os conjuntos ASCII e EBCDIC, cada um dos quais pode ser acomodado em 8 bits. Portanto, é garantido que um byte terá pelo menos 8 bits.
Em outras palavras, um byte é a quantidade de memória necessária para armazenar um único caractere.
Se você deseja verificar o 'número de bits' em sua implementação C ++, verifique o arquivo 'limits.h'. Deve ter uma entrada como abaixo.
#define CHAR_BIT 8 /* number of bits in a char */
PALAVRA
Uma palavra é definida como um número específico de bits que podem ser processados juntos (ou seja, em uma tentativa) pela máquina / sistema. Alternativamente, podemos dizer que o Word define a quantidade de dados que podem ser transferidos entre CPU e RAM em uma única operação.
Os registros de hardware em uma máquina de computador têm tamanho de palavra. O tamanho da palavra também define o maior endereço de memória possível (cada endereço de memória aponta para uma memória de tamanho de byte).
Nota - Em programas C ++, os endereços de memória apontam para um byte de memória e não para uma palavra.