Основные понятия архитектуры ЭВМ


Практическая работа 9. Архитектура компьютера. Хранение информации. Системы счисления.

Системой счисления называется совокупность приемов наименования и записи чисел. В любой системе счисления для представления чисел выбираются некоторые символы (слова или знаки), называемые базисными числами, а все остальные числа получаются в результате каких-либо операций из базисных чисел данной системы счисления. (В двоичной системе счисления используются всего две цифры 0 и 1. Другими словами, двойка является основанием двоичной системы счисления. Аналогично у десятичной системы основание 10). Система называется позиционной, если значение каждой цифры (ее вес) изменяется в зависимости от ее положения (позиции) в последовательности цифр, изображаю¬щих число. Если это условие не выполняется, то система счисления является непозиционной (например, римская).

Десятичная системаДвоичная системаШестнадцатеричная система
000
111
2102
3113
41004
51015
61106
71117
810008
910019
101010A
111011B
121100C
131101D
141110E
151111E

Число единиц какого-либо разряда, объединяемых в единицу более старшего разряда, называют основанием позиционной системы счисления. Если количество таких цифр равно P, то система счисления называется P-ичной. Основание системы счисления совпадает с количеством цифр, используемых для записи чисел в этой системе счисления.

Запись произвольного числа x в P-ичной позиционной системе счисления основывается на представлении этого числа в виде многочлена x = anPn + an-1Pn-1 + ... + a1P1 + a0P0 + a-1P-1 + ... + a-mP-m

Правила перевода.

При переводе чисел из десятичной системы счисления в систему с основанием Р>1 обычно используют следующий алгоритм:

  1. если переводится целая часть числа, то она делится на Р, после чего запоминается остаток от деления. Полученное частное вновь делится на Р, остаток запоминается. Процедура продолжается до тех пор, пока частное не станет равным нулю. Остатки от деления на Р выписываются в порядке, обратном их получению;
  2. если переводится дробная часть числа, то она умножается на Р, после чего целая часть запоминается и отбрасывается. Вновь полученная дробная часть умножается на Р и т.д. Процедура продолжается до тех пор, пока дробная часть не станет равной нулю. Целые части выписываются после двоичной запятой в порядке их получения. Результатом может быть либо конечная, либо периодическая двоичная дробь. Поэтому, когда дробь является периодической, приходится обрывать умножение на каком-либо шаге и довольствоваться приближенной записью исходного числа в системе с основанием Р;
  3. При переводе чисел из системы счисления с основанием Р в десятичную систему счисления необходимо пронумеровать разряды целой части справа налево, начиная с нулевого, и дробной части, начиная с разряда сразу после запятой, слева направо (начальный номер  1). Затем вычислить сумму произведений соответствующих значений разрядов на основание системы счисления в степени, равной номеру разряда. Это и есть представление исходного числа в десятичной системе счисления;

Например. Перевести данное число из десятичной системы счисления в двоич¬ную 475,1875(10);

0,1875*2=0,37
0,375*2=0,75
0,75*2=1,5
0,5*2=1,0
0,1875=0,00112

Читая остатки от деления снизу вверх, получим 111011011. Ответ 111011011,00112

Проверка (обратный перевод):

1*28+1*27+1*26+0*25+1*24+1*23+0*22+1*21+1*20+2*2-1+0*2-2+1*2-3+1*2-4=1+2+8+6+128+256+=475,187510

Для перевода двоичного целого числа в восьмеричное двоичное число нужно разбить на группы по три цифры, справа налево; если в последней группе окажется меньше чем три разряда, то необходимо её дополнить слева нулями. Затем надо преобразовать каждую группу в восьмеричную цифру.

Например 1000110 = 1 000 110 = 1068

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

Пример 111100101,01112 =111 100 101,011 1002 = 745,348.0,101 0012 = 0,518

Для перевода двоичного числа в шестнадцатеричное двоичное число нужно разбить на группы по четыре цифры (тетрады).

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

Пример 11101001000,11010012 = 0111 0100 1000,1101 00102 = 748,D216

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

0,478 = 0,1001112

Таблицы для перевода
Двоичная ССШестнадцатеричная
СС
          Двоичная ССШестнадцатеричная
СС
00000          0000
00011          0011
00102          0102
00113          0113
01004          1004
01015          1015
01106          1106
01117          1117
10008
10019
1010A
1011B
1100C
1101D
1110E
1111F

Арифметические операции, выполняемые в позиционных системах счисления

В вычислительной технике наиболее часто выполняется операция сложения. Пусть заданы два целых положительных числа в позиционной системе счисления с основанием р. Запишем эти числа в виде:

A=anpn+an-1pn-1+...+a1p1+a0p0

B=bnpn+bn-1pn-1+...+b1p1+b0p0

S=snpn+sn-1pn-1+...+s1p1+s0p0

Сумма этих чисел равна числу, которое может быть записано в аналогичном виде:

Вычисления выполняются по следующим правилам: операция сложения выполняется поразрядно, начиная с младших разрядов в слагаемых;

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

В качестве примера рассмотрим арифметические операции в двоичной системе счисления.

Арифметические операции над числами в двоичной системе Счисления

Правила сложения       Правила вычитания       Правила умножения
0 + 0 = 0 0 - 0 = 0 0 * 0 = 0
0 + 1 = 1 0 - 1 = -11 * 0 = 0
1 + 0 = 1 1 - 0 = 1 0 * 1 = 0
1 + 1 = 101 - 1 = 0 1 * 1 = 1

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

Примеры. Сложить два числа: 1010(2)+ 10101(2) = 11111(2)2. Найти разность двух чисел 10101(2) и 1010(2):10101(2) - 1010(2) = 1011(2)3. Умножить два числа 1011(2) и 101(2):1011(2) * 101(2) = 110111(2)