Машинное слово: различия между версиями

[непроверенная версия][непроверенная версия]
Содержимое удалено Содержимое добавлено
→‎История: Исправлено слово "возросли".
Нет описания правки
Строка 1:
{{Значения|Слово (значения)}}
'''Машинное слово''' — машинно-зависимая и платформозависимая величина, [[единицы измерения информации|измеряемая]] в [[бит]]ах или [[байт]]ах ([[трит]]ах или [[трайт]]ах), равная [[разрядность|разрядности]] регистров [[центральный процессор|процессора]] и/или разрядности [[шина данных|шины данных]] (обычно некоторая степень двойки). АдресНа машинногоранних компьютерах размер слова всовпадал [[Оперативнаятакже память|памяти]]с компьютераминимальным равенразмером адресуадресуемой младшегоинформации байта(разрядностью данных, входящегорасположенных впо этоодному адресу); на современных компьютерах минимальным адресуемым блоком информации обычно является байт, а слово состоит из нескольких байтов. Машинное слово определяет следующие характеристики [[аппаратная платформа|аппаратной платформы]]:
* [[разрядность]] [[данные (вычислительная техника)|данных]], обрабатываемых [[Процессор|процессором]];
 
Занесение информации в [[Оперативная память|память]], а также извлечение её из памяти производится по адресам. Это свойство памяти называется ''адресуемостью''.
 
На ранних компьютерах размер слова совпадал с минимальным размером адресуемой информации ([[Разрядность|разрядностью]] данных, расположенных по одному адресу); на современных компьютерах минимальным адресуемым блоком информации обычно является [[байт]], а слово состоит из нескольких байтов. Машинное слово определяет следующие характеристики [[аппаратная платформа|аппаратной платформы]]:
* [[разрядность]] [[данные (вычислительная техника)|данных]], обрабатываемых [[Процессор|процессором]];
* разрядность адресуемых данных (разрядность шины данных);
* максимальное значение беззнакового [[целый тип|целого типа]], напрямую поддерживаемого процессором: если результат [[Компьютерная арифметика|арифметической операции]] превосходит это значение, то происходит [[арифметическое переполнение|переполнение]];
* максимальный объём [[Оперативнаяоперативная память|оперативной памяти]], напрямую [[адресация памяти|адресуемой]] процессором.
 
== Размер машинного слова на различных архитектурах ==
== История ==
На ранних компьютерах встречалась самая разная длина слова. В те времена компьютеры делились на бизнес-ориентированные и научные. В бизнес-ориентированных компьютерах, занимавшихся экономическими и бухгалтерскими расчётамирасчетами, не требовалась высокая [[точность]] вычислений, так как суммы всегда [[Округление|округлялись]] лишь до двух знаков после запятой. В научных же вычислениях наиболее часто проводятся операции с [[Вещественные числа|вещественными]] числами, и точность вычислений (количествос большим количеством знаков после запятой) очень важна. Так как модули памяти дляв ранних компьютеровкомпьютерах стоили дорого, выбор размера слова напрямую отражался как на точности вычислений, которые мог выполнятьвыдавать компьютер, так и на его стоимости. 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-ю знаками после запятой, (считалосьв приемлемымсамый раз для уровня научных вычислений того времени).
 
На ранних компьютерах встречалась самая разная длина слова. В те времена компьютеры делились на бизнес-ориентированные и научные. В бизнес-ориентированных компьютерах, занимавшихся экономическими и бухгалтерскими расчётами, не требовалась высокая [[точность]] вычислений, так как суммы всегда [[Округление|округлялись]] лишь до двух знаков после запятой. В научных же вычислениях наиболее часто проводятся операции с [[Вещественные числа|вещественными]] числами, и точность вычислений (количество знаков после запятой) очень важна. Так как модули памяти для ранних компьютеров стоили дорого, выбор размера слова напрямую отражался как на точности вычислений, которые мог выполнять компьютер, так и на его стоимости. 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-ю знаками после запятой (считалось приемлемым для научных вычислений того времени).
 
В [[1950-е|1950-х]] — [[1960-е|1960-х годах]] во многих компьютерах, производимых в [[США]], длина слова была кратна 6-ишести [[бит]]ам.битам, поскольку Тогдатам использовалась [[шестибитная кодировка]]. Длятак как для представления всех цифр и букв [[Английский алфавит|английского алфавита]] достаточно было 6-и бит: <math>2^6=64</math> возможных комбинации позволяли закодировать 32 буквы (в верхнем регистре), 10 цифр и некоторыедостаточное символыколичество символов [[Пунктуация|пунктуации]].
 
Первой машиной, в которой появилось 64-битное слово, стал [[суперкомпьютер]] [[Cray-1]] (1974 г.), так как к тому времени требования к точности вещественных чисел при проведении научных вычислений возросли.
Требования к точности научных вычислений возросли, и в 1974 году появилась первая машина с 64-битным словом — [[суперкомпьютер]] [[Cray-1]].
 
В подавляющем большинстве современных компьютеров длина слова является [[двоичная система счисления|степенью двойки]]; при этом используются [[8-бит]]ные символы.
 
На ранних компьютерах слово было минимально адресуемой ячейкой памяти; сейчас минимально адресуемой ячейкой памяти является [[байт]], а слово состоит из нескольких байтов. Это приводит к неоднозначному толкованию размера слова. Например, на процессорах [[80386]] и их потомках «словом» традиционно называют [[16 бит]] (2 байта), хотя эти процессоры могут одновременно обрабатывать и более крупные блоки данных.
 
Слова длиной ''<math>n''</math> [[бит]]ов принимают численные (беззнаковые) значения от [[0 (число)|0]] до <math>2^n-1</math> включительно.
 
== Размер машинного слова на различных архитектурах ==
 
{| class="standard sortable" style="text-align: center"
!Год ||Архитектура ||Размер слова<br />(''w''), битов ||Размер целого ||Размер чисел<br />с плавающей запятой ||Размер инструкции
! Год
! [[Архитектура компьютера|Архитектура]]
! Размер слова<br />(''w'') в [[бит]]ах
! Размер [[Целое число|целого]]
! Размер чисел<br />с [[Число с плавающей запятой|плавающей запятой]]
! Размер [[Код операции|инструкции]]
|-
|1952 ||[[IBM 701]] ||36 ||½''w'', ''w'' || — ||½''w''
Строка 90 ⟶ 78 :
|1994 ||[[SPARC]] v9 ||64 ||¼''w'', ½''w'', ''w'' ||''w'', 2''w'' ||''w''
|-
|20012000 ||[[Itanium]] ([[IA-64]]) ||64 ||8 b, ¼''w'', ½''w'', ''w'' ||½''w'', ''w'' ||41 b
|-
|2002 ||[[Intel XScale|XScale]] ||32 ||''w'' ||''w'', 2''w'' ||½''w'', ''w''
|-
|2003||[[x86-64]]||64||8b, ¼''w'', ½''w'', ''w''||½''w'', ''w'', 1¼''w'', 17''d''||8 b
|}
 
{{заготовка раздела}}
 
''Обозначения:'' b — бит (двоичная цифра), d — децит (десятичная цифра), ''w'' — размер машинного слова, ''n'' — переменное значение.
Обозначения:
* b — бит (двоичная цифра);
* d — децит (десятичная цифра);
* ''w'' — размер машинного слова;
* ''n'' — переменное значение.
 
<nowiki>*</nowiki> Для 32-битных [[Процессор|процессоров]] архитектуры [[x86]]: исторически машинным словом считается 16 бит, реально — [[32 бит]]а.
 
== См. также ==
 
* [[Порядок байтов]]
* [[Регистр процессора]]