Машинное слово: различия между версиями
[отпатрулированная версия] | [отпатрулированная версия] |
м →Размер машинного слова на различных архитектурах: дополнение, уточнение |
|||
Строка 7: | Строка 7: | ||
== Размер машинного слова на различных архитектурах == |
== Размер машинного слова на различных архитектурах == |
||
На ранних компьютерах встречалась самая разная длина слова. В те времена компьютеры делились на бизнес-ориентированные и научные. В бизнес-ориентированных компьютерах, занимавшихся экономическими и бухгалтерскими расчетами, не требовалась высокая точность вычислений, так как суммы всегда округлялись лишь до двух знаков после запятой. В научных же вычислениях наиболее часто проводятся операции с вещественными числами, и точность вычислений с большим количеством знаков после запятой очень важна. Так как модули памяти в ранних компьютерах стоили дорого, выбор размера слова напрямую отражался как на точности вычислений, которые мог выдавать компьютер, так и на его стоимости. 48-битное слово пользовалось большой популярностью<ref>[http://www.quadibloc.com/comp/cp0303.htm Real Machines with 24-bit and 48-bit words]</ref>, потому что 32-битное слово позволяло выразить вещественные числа с 6-7-ю знаками после запятой, что было недостаточно из-за накопления ошибки округления при больших расчетах, а 64-битное слово с 15-16 знаками после запятой выходило далеко за рамки требований к точности. 48-битное слово позволяло выразить вещественное число с 10-ю знаками после запятой, в самый раз для уровня научных вычислений того времени. |
|||
⚫ | |||
⚫ | |||
В подавляющем большинстве современных компьютеров длина слова является [[двоичная система счисления|степенью двойки]]; при этом используются [[8-бит]]ные символы. |
|||
На ранних компьютерах слово было минимально адресуемой ячейкой памяти; сейчас минимально адресуемой ячейкой памяти является байт, а слово состоит из нескольких байтов. Это приводит к неоднозначному толкованию размера слова. Например, на процессорах [[80386]] и их потомках «словом» традиционно называют [[16 бит]] (2 байта), хотя эти процессоры могут одновременно обрабатывать и более крупные блоки данных. |
На ранних компьютерах слово было минимально адресуемой ячейкой памяти; сейчас минимально адресуемой ячейкой памяти является байт, а слово состоит из нескольких байтов. Это приводит к неоднозначному толкованию размера слова. Например, на процессорах [[80386]] и их потомках «словом» традиционно называют [[16 бит]] (2 байта), хотя эти процессоры могут одновременно обрабатывать и более крупные блоки данных. |
Версия от 15:27, 26 ноября 2013
Машинное слово — машинно-зависимая и платформозависимая величина, измеряемая в битах или байтах (тритах или трайтах), равная разрядности регистров процессора и/или разрядности шины данных (обычно некоторая степень двойки). На ранних компьютерах размер слова совпадал также с минимальным размером адресуемой информации (разрядностью данных, расположенных по одному адресу); на современных компьютерах минимальным адресуемым блоком информации обычно является байт, а слово состоит из нескольких байтов. Машинное слово определяет следующие характеристики аппаратной платформы:
- разрядность данных, обрабатываемых процессором;
- разрядность адресуемых данных (разрядность шины данных);
- максимальное значение беззнакового целого типа, напрямую поддерживаемого процессором: если результат арифметической операции превосходит это значение, то происходит переполнение;
- максимальный объём оперативной памяти, напрямую адресуемой процессором.
Размер машинного слова на различных архитектурах
На ранних компьютерах встречалась самая разная длина слова. В те времена компьютеры делились на бизнес-ориентированные и научные. В бизнес-ориентированных компьютерах, занимавшихся экономическими и бухгалтерскими расчетами, не требовалась высокая точность вычислений, так как суммы всегда округлялись лишь до двух знаков после запятой. В научных же вычислениях наиболее часто проводятся операции с вещественными числами, и точность вычислений с большим количеством знаков после запятой очень важна. Так как модули памяти в ранних компьютерах стоили дорого, выбор размера слова напрямую отражался как на точности вычислений, которые мог выдавать компьютер, так и на его стоимости. 48-битное слово пользовалось большой популярностью[1], потому что 32-битное слово позволяло выразить вещественные числа с 6-7-ю знаками после запятой, что было недостаточно из-за накопления ошибки округления при больших расчетах, а 64-битное слово с 15-16 знаками после запятой выходило далеко за рамки требований к точности. 48-битное слово позволяло выразить вещественное число с 10-ю знаками после запятой, в самый раз для уровня научных вычислений того времени.
В 1950-х — 1960-х годах во многих компьютерах, производимых в США, длина слова была кратна шести битам, поскольку там использовалась шестибитная кодировка, и, таким образом, в машинном слове умещалось целое число символов.
В подавляющем большинстве современных компьютеров длина слова является степенью двойки; при этом используются 8-битные символы.
На ранних компьютерах слово было минимально адресуемой ячейкой памяти; сейчас минимально адресуемой ячейкой памяти является байт, а слово состоит из нескольких байтов. Это приводит к неоднозначному толкованию размера слова. Например, на процессорах 80386 и их потомках «словом» традиционно называют 16 бит (2 байта), хотя эти процессоры могут одновременно обрабатывать и более крупные блоки данных.
Слова длиной битов принимают численные (беззнаковые) значения от 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 |
2000 | Itanium (IA-64) | 64 | 8 b, ¼w, ½w, w | ½w, w | 41 b |
2002 | XScale | 32 | w | w, 2w | ½w, w |
Обозначения: b — бит (двоичная цифра), d — децит (десятичная цифра), w — размер машинного слова, n — переменное значение.
* Для 32-битных процессоров x86: исторически машинным словом считается 16 бит, реально — 32 бита.
См. также
Ссылки
- Real Machines with 24-bit and 48-bit words сравнение различных компьютеров с 48-и разрядным словом
- Real Machines with 16, 32, and 30-bit words сравнение различных компьютеров с 16-, 32- и 30-и разрядным словом
Для улучшения этой статьи желательно:
|