Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Org_EVM_var_dlya_MGOU.doc
Скачиваний:
20
Добавлен:
21.04.2019
Размер:
6.1 Mб
Скачать

4.1. Системы счисления, используемые в эвм

Для изображения чисел используются определенные приемы и правила, называемые системами счисления. Все известные системы счисления делятся на две группы: позиционные системы счисления и непозиционные системы счисления.

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

До наших дней дошла одна из разновидностей непозиционных систем - римская система счисления. В ней используются так называемые римские цифры: I - 1, V - 5, X - 10, L - 50, C - 100, D - 500, M - 1000. Значение числа вычисляется суммированием всех чисел с учетом правила, что если цифра меньшего веса стоит слева от следующей за ней цифрой большего веса, то она имеет знак минус, а если справа - то знак плюс. Например, число MCCXXXIV определяется следующим образом:

1000 + 100 + 100 + 10 + 10 + 10 - 1 + 5 = 1234

Непозиционные системы счисления обладают двумя существенными недостатками. Во-первых, при увеличении диапазона представленных чисел увеличивается число различных символов в изображаемых числах. Во-вторых, очень сложны правила выполнения даже самых простых арифметических действий.

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

В позиционных системах счисления любое число X изображается в виде полинома

. (4.1)

B этом выражении aj называются коэффициентами, а S - основанием системы счисления. Значение любого коэффициента в изображаемом числе может лежать в диапазоне 0...(S-1). В настоящее время во всех странах мира используется десятичная система счисления, представляющая собой позиционную систему счисления с основанием S=10. Коэффициенты при изображении чисел в десятичной системе счисления могут принимать значения в диапазоне от 0....9. Для краткости вместо записи числа в виде полинома записывают только последовательность коэффициентов этого полинома. Когда мы пишем десятичное число X=94,46 , то подразумеваем величину

Значение первой цифры слева от запятой, отделяющей целую часть числа от его дробной части, соответствует значению изображенной цифры (говорят, что ее “вес” равен единице); значение следующей цифры слева равно десятикратному значению изображаемой цифры (“вес” цифры - 10) и т.д. Значение цифры справа от запятой равняется десятой части написанной цифры, (ее “вес” равен 0,1) следующей - сотой части и т. д.

В принципе, роль основания способно играть любое целое число, большее единицы. Возьмем, например, десятичное число 437. Вполне возможно записать это число и как

где индекс 8 у числа 665 указывает, что мы имеем дело с числом, при записи которого вместо обычного основания S=10 используется основание S=8. Числа, записанные в системе счисления с основанием 8, называются восьмеричными.

То же самое десятичное число 437 можно записать в виде

.

Числа, записанные в системе счисления с основанием 16, называются шестнадцатеричными (А соответствует цифре 10 в десятичной системе).

Простейшей позиционной системой счисления является система с основанием S=2. В этой системе число

.

Преимущество использования двойки в качестве основания системы счисления состоит в том, что требуются только две различные цифры для записи любого числа - 0 и 1. Недостаток двоичной системы в том, что для изображения числа в двоичной форме требуется примерно в 3,3 раза больше цифр, чем в десятичной.

Подобно тому, как для записи десятичных чисел используют десять различных цифр (0¸9), для написания двоичных чисел применяют две различные цифры (0 и 1), восьмеричных - восемь (0¸7) и шестнадцатеричных - 16. Так как только десять цифр из шестнадцати имеют общепринятые обозначения арабскими цифрами 0¸9, то для записи остальных цифр 10¸15 шестнадцатеричных чисел используют символы латинского алфавита A¸F (A соответствует цифре 10, В - 11, C - 12, D - 13, E - 14, F - 15). Так, например, шестнадцатеричное число соответствует десятичному числу 46, так как .

С дробными числами при любом основании обращаются так же, как и в десятичной системе. Необходимо лишь учитывать то обстоятельство что конечная дробь в одной системе счисления может стать периодической в другой. Так, например,

но .

В ЭВМ используются позиционные системы счисления с основаниями 2, 8, 16, 10. Основной системой счисления является двоичная. Во-первых, в этой системе счисления, как уже говорилось, для изображения чисел необходимы только комбинации двух цифр: 0 и 1. Эти две цифры можно изображать элементами, имеющими два различных состояния. Одному состоянию, причем любому, можно поставить в соответствие цифру 0, а другому - 1. Такие элементы называются двухпозиционными (две позиции - два состояния) и они исключительно легко изготавливаются технически.

Для сравнения укажем, что для изображения одной десятичной цифры необходимо иметь элемент, имеющий 10 четко выраженных различных состояний. В принципе, логика выполнения арифметических операций в двоичной системе счисления наиболее проста. Это наглядно на примере сравнения таблиц умножения десятичных цифр с одной единственной таблицей умножения двоичных цифр имеющей вид:

0´0=0; 0´1=0; 1´0=0; 1´1=1.

Из приведенных примеров видно, что десятичная система счисления крайне неудобна для использования в ЭВМ, но она общепринята, и поэтому, не смотря на свои недостатки, так же нашла применение в вычислительной технике. Для того чтобы ввести в ЭВМ десятичные числа, отобразить их состояниями двухпозиционных элементов, используется так называемая двоично-десятичная форма представления десятичных чисел. В этой форме каждая цифра десятичной записи числа изображается в виде четырехразрядного двоичного числа (двоичной тетрады). Например, десятичное число X10=481,75 в двоично-десятичной форме будет иметь вид:

4 8 1, 7 5

X2-10= 0100 1000 0001, 0111 0101.

Нельзя путать двоично-десятичную форму записи числа с двоичной записью того же числа! В первом случае основание системы счисления остается равным десяти - только коэффициенты при основании выражены в двоичной форме.

Восьмеричная и шестнадцатеричная форма записи в основном используются при программировании задач для ЭВМ и введения компактных записей во время отладки программ. Достоинства этих форм записи числа - легкость перевода из двоичной формы в восьмеричную (шестнадцатеричную) и наоборот, с одной стороны, и компактность изображения чисел, с другой стороны. Например, чтобы перевести шестнадцатеричное число X16=1FA,0F в двоичную форму, необходимо каждую шестнадцатиричную цифру представить эквивалентным четырехразрядным двоичным числом. В итоге получим:

7 F В, 0 Е

0111 1111 1011, 0000 1110.

Аналогично для восьмеричного 34:

5 6

101 110.

В таблице 4.1 приведены различные формы записи двадцати чисел натурального ряда.

Таблица 4.1. Различные формы записи двадцати чисел натурального ряда

Десятичное число

Двоичное число

Восьмеричное число

Шестнадцати-ричное число

Двоично-десятичное число

0

0

0

0

0000

1

1

1

1

0001

2

10

2

2

0010

3

11

3

3

0011

4

100

4

4

0100

5

101

5

5

0101

6

110

6

6

0110

7

111

7

7

0111

8

1000

10

8

1000

9

1001

11

9

1001

10

1010

12

A

0001 0000

11

1011

13

B

0001 0001

12

1100

14

C

0001 0010

13

1101

15

D

0001 0011

14

1110

16

E

0001 0100

15

1111

17

F

0001 0101

16

10000

20

10

0001 0110

17

10001

21

11

0001 0111

18

10010

22

12

0001 1000

19

10011

23

13

0001 1001

20

10100

24

14

0010 0000

Необходимо особо подчеркнуть:

  1. Количество, которое отражает цифровая запись числа остается неизменным, независимо от системы счисления;

  2. Правила выполнения арифметических операций над многоразрядными числами представленными в позиционных системах счисления с различными основаниями, одни и те же.

  3. Правила сложения и умножения одноразрядных чисел для каждой системы счисления определяются своими таблицами умножения и сложения.

Рассмотрим пример. Пусть нам необходимо найти произведение двух восьмеричных чисел: X8=3512 (эти числа соответствует десятичным 29 и 10 соответственно).

Б

43

14

214

43

644

удем умножать “столбиком”:

Ответ: X8=43´14=644=6´ +4´

Умножая 4 на 3 в восьмеричной системе, получаем результат 148 (это соответствует 12 в десятичной системе). Следовательно, согласно правилам, в данном разряде записывается число 4, а единица переноса запоминается. Умножая далее 4 на 4 получаем 20 в восьмеричной ситсеме, а с учетом единицы переноса - цифру 21. Таким образом, результатом умножения восьмеричного числа 43 на цифру 4 будет восьмеричное число 214. Аналогично умножается множимое 43 на следующую цифру множителя 43´1=43. При сложении полученных таким образам частичных сумм необходимо пользоваться соответствующими таблицами сложения. Окончательный ответ в восьмеричной форме 644 соответствует десятичному числу 420.

Порядок вычислений на ЭВМ обычно таков. Исходные числовые данные вводятся в ЭВМ в обычной для человека десятичной форме (например, с помощью клавиатуры - устройства ввода). ЭВМ имеют в своем составе специальные устройства, называемые шифраторами, которые осуществляют автоматический перевод вводимой десятичной информации в двоично-десятичную форму. По специальной подпрограмме или схеме (разработаны специальные большие интегральные схемы, осуществляющие автоматический перевод чисел из двоично-десятичной записи в двоичную запись и наоборот) числовая информация из двоично-десятичной формы переводится в двоичную запись. Затем производятся необходимые вычисления в двоичной системе счисления. Если необходимо выдавать какие-то результаты вычислений в десятичной форме, то эти данные, программно или с помощью специальных микросхем, переводятся сначала в двоично-десятичную форму, а затем с помощью устройств вывода выдаются непосредственно в десятичной форме (например, печатаются на бланке или высвечиваются на экране дисплея).

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

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]