Машинное слово — машинно-зависимая и платформозависимая величина, измеряемая в битах или байтах (тритах или трайтах), равная разрядности регистров процессора и/или разрядности шины данных (обычно некоторая степень двойки)[1].
Занесение информации в память, а также извлечение её из памяти производится по адресам. Это свойство памяти называется адресуемостью.
В ранних ЭВМ размер слова совпадал с минимальным размером адресуемой информации (разрядностью данных, расположенных по одному адресу); в современных машинах минимальным адресуемым блоком информации называется байт, а слово состоит из нескольких байтов. Машинное слово определяет следующие характеристики аппаратной платформы:
На ранних компьютерах встречалась самая разная длина слова. В те времена компьютеры делились на бизнес-ориентированные и научные. В бизнес-ориентированных компьютерах, занимавшихся экономическими и бухгалтерскими расчётами, не требовалась высокая точность вычислений, так как суммы всегда округлялись лишь до двух знаков после запятой. В научных же вычислениях наиболее часто проводятся операции с вещественными числами и точность вычислений (количество знаков после запятой) очень важна. Так как модули памяти для ранних компьютеров стоили дорого, выбор размера слова напрямую отражался как на точности вычислений, которые мог выполнять компьютер, так и на его стоимости. 48-Битное слово в научных компьютерах пользовалось большой популярностью[2], потому что 32-битное слово позволяло выразить вещественные числа с 6-7 знаками после запятой, что было недостаточно из-за накопления ошибки округления при больших расчётах, а 64-битное слово с 15-16 знаками после запятой выходило далеко за рамки требований к точности. 48-Битное слово позволяло выразить вещественное число с 10 знаками после запятой (считалось приемлемым для научных вычислений того времени).
В 1950-х — 1960-х годах во многих компьютерах, производимых в США, длина слова была кратна 6 битам. Тогда использовалась шестибитная кодировка. Для представления всех цифр и букв английского алфавита достаточно было 6 бит: возможных комбинации позволяли закодировать 32 буквы (в верхнем регистре), 10 цифр и некоторые символы пунктуации.
Требования к точности научных вычислений возросли, и в 1974 году появилась первая машина с 64-битным словом — суперкомпьютер Cray-1.
В подавляющем большинстве современных компьютеров длина слова является степенью двойки; при этом используются 8-битные символы.
На ранних компьютерах слово было минимально адресуемой ячейкой памяти; сейчас минимально адресуемой ячейкой памяти является байт, а слово состоит из нескольких байтов. Это приводит к неоднозначному толкованию размера слова. Например, на процессорах 8086 и их потомках «словом» традиционно называют 16 бит (2 байта), хотя эти процессоры могут одновременно обрабатывать и более крупные блоки данных.
Слова длиной n битов принимают численные (беззнаковые) значения от 0 до включительно.
Год | Архитектура | Размер слова (w) в битах |
Размер целого | Размер чисел с плавающей запятой |
Размер инструкции |
---|---|---|---|---|---|
1952 | IBM 701 | 36 | ½w, w | — | ½w |
1954 | IBM 704 | 36 | w | w | w |
1960 | PDP-1 | 18 | w | — | w |
1960 | CDC 1604 | 48 | w | w | ½w |
1964 | CDC 6600 | 60 | w | w | ¼w, ½w, w |
1965 | IBM 360 | 32 | ½w, w, 1d … 31d | w, 2w | ½w, w, 1½w |
1965 | PDP-8 | 12 | w | — | w |
1968 | БЭСМ-6 | 48 | w | w, 2w | ½w |
1970 | IBM 370 | 32 | ½w, w, 1d … 31d | w, 2w, 4w | ½w, w, 1½w |
1970 | PDP-11 | 16 | ½w, w | 2w, 4w | w, 2w, 3w |
1971 | Intel 4004 | 4 | w, d | — | 2w, 4w |
1972 | Intel 8008 | 8 | w, 2d | — | w, 2w, 3w |
1974 | Intel 8080 | 8 | w, 2w, 2d | — | w, 2w, 3w |
1975 | Cray-1 | 64 | 24 b, w | w | ¼w, ½w |
1975 | MOS Tech. 6501 MOS Tech. 6502 | 8 | w, 2d | — | w, 2w, 3w |
1976 | Zilog Z80 | 8 | w, 2w, 2d | — | w, 2w, 3w, 4w |
1978 (1980) | Intel 8086 (w/Intel 8087) | 16 | ½w, w, 2d (w, 2w, 4w) | — (2w, 4w, 5w, 17d) | ½w, w, … 7w |
1978 | VAX-11/780 | 32 | ¼w, ½w, w, 1d, … 31d, 1b, … 32b | w, 2w | ¼w, … 14¼w |
1979 | Motorola 68000 | 32 | ¼w, ½w, w, 2d | — | ½w, w, … 7½w |
1982 (1983) | Motorola 68020 (w/Motorola 68881) | 32 | ¼w, ½w, w, 2d | — (w, 2w, 2½w) | ½w, w, … 7½w |
1985 | ARM1 | 32 | w | — | w |
1985 | MIPS32 | 32 | ¼w, ½w, w | w, 2w | w |
1989 | Intel 80486 | 16 (32)* | ½w, w, 2w, 2d w, 2w, 4w | 2w, 4w, 5w, 17d | ½w, w, … 7w |
1989 | Motorola 68040 | 32 | ¼w, ½w, w, 2d | w, 2w, 2½w | ½w, w, … 7½w |
1991 | MIPS64 | 64 | ¼w, ½w, w | w, 2w | w |
1991 | PowerPC | 32 | ¼w, ½w, w | w, 2w | w |
1992 | SPARC v8 | 32 | ¼w, ½w, w | w, 2w | w |
1994 | SPARC v9 | 64 | ¼w, ½w, w | w, 2w | w |
2001 | Itanium (IA-64) | 64 | 8 b, ¼w, ½w, w | ½w, w | 41 b |
2002 | XScale | 32 | w | w, 2w | ½w, w |
2003 | x86-64 | 64 | 8b, ¼w, ½w, w | ½w, w, 1¼w, 17d | 8 b |
Этот раздел не завершён. |
Обозначения:
* Для 32-битных процессоров архитектуры x86: исторически машинным словом считается 16 бит, реально — 32 бита.
Для улучшения этой статьи желательно: |
Данная страница на сайте WikiSort.ru содержит текст со страницы сайта "Википедия".
Если Вы хотите её отредактировать, то можете сделать это на странице редактирования в Википедии.
Если сделанные Вами правки не будут кем-нибудь удалены, то через несколько дней они появятся на сайте WikiSort.ru .