Машинное слово


В вычислительной и иной программируемой технике машинным словом называется единица данных, которая выбрана естественной для данной архитектуры процессора.

Машинное слово есть фрагмент данных фиксированного размера, обрабатываемый как единое целое с помощью набора команд или аппаратного обеспечения процессора. Количество бит в машинном слове — размер слова (он же ширина или длина слова) — является важной характеристикой любой конкретной архитектуры процессора или компьютерной архитектуры.

Размер машинного слова отражается во многих аспектах структуры и работы компьютера. Большинство регистров в процессоре обычно имеют размер равный размеру машинного слова, и наибольшая часть данных, которая может быть передана в рабочую память и из неё за одну операцию, является машинным словом во многих (не во всех) архитектурах. Наибольший возможный размер адреса, используемый для адресации памяти (как правило побайтной), обычно представляет собой аппаратное слово (здесь «аппаратное слово» означает полноразмерное натуральное слово процессора, в отличие от любого иного используемого определения).

На ранних компьютерах встречалась длина машинного слова, которая была довольно разной. В те времена компьютеры делились на бизнес-ориентированные и научно-технические. В бизнес-ориентированных компьютерах, занимавшихся экономическими и бухгалтерскими расчётами, не требовалась высокая точность вычислений, так как суммы всегда округлялись лишь до двух сотых. В научных же вычислениях наиболее часто проводятся операции с вещественными числами и точность вычислений (количество знаков после запятой/дробной точки) очень важна. Так как модули памяти для ранних компьютеров стоили дорого, выбор длины машинного слова напрямую влиял как на точности вычислений, выполняемых компьютером, так и на его стоимости. 48-битное машинное слово в научно-технических компьютерах пользовалось большой популярностью[1], потому что 32-битное слово позволяло выразить вещественные числа с 6−7 знаками после запятой, что было недостаточно из-за накопления ошибки округления при сложных расчётах (особенно инженерных), а 64-битное слово с 15−16 знаками после запятой выходило далеко за рамки требований к точности. 48-битное слово позволяло выразить вещественное число с 10 знаками после запятой (считалось приемлемым для научных и инженерных вычислений того времени).

В 1950−1960-х годах во многих компьютерах длина слова была кратна 6 битам. Тогда использовалась шестибитная кодировка, — для представления всех цифр и всех букв латинского алфавита, включая дополнительные буквы западноевропеских языков и некоторых греческих букв достаточно было 6 бит: возможных комбинации позволяли закодировать 32 символа в одном (верхнем) регистре, 10 цифр и некоторые символы пунктуации.