Операция байта работает с одним байтом, операция слова работает со словом данных. Типичные размеры слова составляют 2, 4 или 8 байтов, то есть 16 бит, 32 бита или 64 бита.
Если предположить, что размер слова равен 16 битам, например, если вы записываете байт 0x23
в ячейку памяти 0x1000
, то значение памяти по адресу 0x1000
изменяется на 0x23
. Если вы напишите слово 0x2342
по адресу 0x1000
, то эффект будет зависеть от порядкового номера вашей машины. На машине little-endian , где младший значащий байт сохраняется первым, память по адресу 0x1000
получает значение 0x42
, а память по адресу 0x1001
получает значение 0x23
. На big endian машинах все наоборот.
То же самое относится ко всем остальным инструкциям.
Многие современные процессоры имеют только арифметические инструкции для данных размером в слово, причем единственными байтовыми инструкциями являются команды специальной загрузки и сохранения. В таких архитектурах данные в одном байте расширяются от нуля или до целого слова при загрузке в регистр, поэтому вы можете работать с ним как с полным словом. Например, 0x80
становится 0x0080
при расширении нуля и 0xff80
при расширении знака.