Теоретические основы вычислительной техники 1 страница

1.1. Представление информации в ЭВМ

1.1.1. Системы счислении

 

Система счисления (СС) – это способ представления любого числа с помощью принятого набора символов (цифр, букв, …).

 

Представление чисел в различных системах счисления (СС)

В различных странах и в различное время исторически сложились и использовались следующие СС: римская; 5 (Африка); 12 (1фут=12дюймов, 12 месяцев…); 20 (ацтеки, майя); 60 (Вавилон – время, углы, …); 2 (Австралия, Полинезия); 10 (Индия ® арабы ® Европа).

Выбор системы счисления основывается в каждом конкретном случае на ряде критериев. Наиболее распространёнными из них являются:

- эффективность вычислений (обеспечивает простые алгоритмы);

- наглядность (определяется физическими свойствами субъекта);

- реализуемость (в данном случае – техническая).

Системы счисления классифицируются следующим образом:

 

Системы счисления

       
   


непозиционные позиционные

       
   

 


смешанные однородные

Различные СС связаны между собой, например: римская и десятичная.

Римская СС 10-я СС
I V X L C D M

 

Пример. Представить число MDCCCXII в десятичной СС

1000(M) + 500(D) + 100(C) + 100(C) + 100(C) + 10(X) + 1(I) + 1(I) = 1812

 

Пример. Представить число 1988 в римской СС

1988 = 1000+900+80+8 = 1000+(1000-100)+50+10+10+10+5+1+1+1= =MCMLXXXVIII

 

MDCCCXII – 1812 XXX – 30

XL – 40

LXXX – 80

XC – 90

CCC – 300

CD – 400

DC – 600

CM – 900

 

Позиционная СС (ПСС) определяется конфигурацией и местом (позицией) каждого элемента, а характеризуется: основанием (числом символов n) и алфавитом.

 

Представление позиционной СС полиномом

где n – основание СС, ai – любой символ из алфавита СС

 

Примеры ПСС.

 

СС основание алфавит
десятичная двоичная восьмеричная шестнадцатеричная 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 8 9 A B C D E F

 

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

Задание 1. Представить число 1539 в римской С. С.

Задание 2. Представить число MMDCXLVII в 10-ной С. С.

Задание 3. Представить число 15.394(10) полиномом.

Задание 4. Представить число 11010100,001 полиномом.

 

1.1.2. Методы перевода чисел из одной позиционной системы счисления в другую.

A(n)=>A(k), где А – число, n и k – основания двух С. С.

Алгоритм перевода при n<k:

- представить А(n) полиномом основания n,

- все коэффициенты, основание n-ичной С. С. и все степени основания полинома записать в k-ичной С. С.,

- выполнив все предусмотренные действия получить А(k).

Пример. Перевести число 1011,01 из двоичной С. С. в десятичную С. С.

Здесь n = 2, k = 10, т. е. n<k.

Задание 5. Перевести число 10001,011(2) в десятичную С. С.

Задание 6. Перевести число 0,10011(2) в десятичную С. С.

Алгоритм перевода при n>k. Преобразуются отдельно и по-разному целая Ац(n) и дробная А­д(n)­­ части числа А(n).

А(n) = Aц(n)+Aд(n).

Преобразование Ац(n)=>Aц(k) осуществляется последовательным делением Ац(n) на k, выделением остатков от деления и составлением из них числа Ац(k).

Пример. Перевести число 37,75 из десятичной С. С. в двоичную С. С. Здесь n=10, k=2, т. е. n>k.

А(10)ц(10)д(10)=37(10)+0,75(10). Нужно Ац(10)=>А­ц(2) и Ад(10)=>Aд(2).

x0,
а-1=1,
а-2=1,
а-3=0

 

=> Aд(2)­=0,а-1а-2а-3…=0,11(2)

В итоге: 37,75­­(10)=100101,11(2)

Проверка:

Задание 7. Перевести число 29,8125(10) в двоичную С. С.

Задание 8. Перевести число 100,3­(10) в двоичную С. С.

Задание 9. Перевести число 364(7) в пятеричную С. С. через десятичную С. С.

Перевод чисел в С. С. с основанием кратным двум.

Пусть n=2l, а k=2. Тогда каждая цифра n-ичной С. С. представляется l – разрядным двоичным числом.

Пример. Перевести число 472,54­(8) в двоичную и шестнадцатеричную С. С.

Сначала выполним перевод в двоичную С. С.

Так как 16=24, то l2 и, следовательно,

472,54(8)= 100111010 , 1011 = 1 3 А , В(16).

Задание 10. Перевести число 3103,12(4)­ в двоичную С. С.

Задание 11. Перевести число 1011010101,11(2) в восьмеричную С. С. и шестнадцатеричную С. С.

Задание 12. Перевести число F0A(16) в четвертичную С. С.

Задание 13. Перевести число 27,59375(10)­ в шестнадцатеричную С. С.

 

1.1.3. Формы представления чисел.

 


Представление чисел в форме с фиксированной запятой (ФЗ)

Формат представления чисел с запятой, фиксированной перед старшим разрядом:

, знак 2-1 2-2 2-3   2-(n-2) 2-(n-1) <= веса разрядов
    -2 -1 <= номера разрядов

­ n – разрядная сетка ЭВМ

В этом формате диапазон представляемых чисел

Формат представления чисел с запятой, фиксированной после младшего разряда:

знак 2n-2 2n-3 2n-4   21 20
n-1 n-2 n-3 n-4  

В этом формате диапазон представляемых чисел

Представление знаков: “+” <==> 0; “-“ <==> 1.

Пример. Представить число -0,0225(10) в форме с ФЗ в 16-разрядной сетке ЭВМ.

-0,0225(10)=-0,0000010111(2).

,

 

Формат представления чисел в форме с естественной запятой.

(с произвольным расположением запятой в пределах n-разрядной сетки ЭВМ)

знак 2l-1 2l-2   21 20 , 2-1   2-(m-1) 2-m
  целая часть числа (l разрядов)   дробная часть числа (m разрядов)
n – разрядная сетка ЭВМ (n=l+m+1)

 

Задание 14. Представить число 1141(10) в форме с ФЗ в 16-разрядной сетке.

Задание 15. Представить число -0,4­(10) в форме с ФЗ в 8-разрядной сетке.

Задание 16. Представить число -88,8125­(10) в форме с естественной запятой в 16-разрядной сетке.

 

Представление чисел в форме с плавающей запятой (ПЗ).

Число представляется в виде: , где А – исходное число, М – мантисса (/М/<1), SP – характеристика числа А, S – основание С. С., Р – порядок.

знак порядка         знак числа    
  разряды Р   разряды М
l разрядов m разрядов

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

Пример. Представить число -27,375(10) в форме с ПЗ в 16-разрядной сетке ЭВМ.

-27,375­(10)=-11011,011(2). Проведя нормализацию получим . Пусть под порядок отведено 4 разряда. Тогда содержимое разрядной сетки будет:

Задание 17. Представить число 59,625(10) в форме с ПЗ в 16-разрядной сетке.

Задание 18. Представить число -0,0625(10)­ в форме с ПЗ в 8-разрядной сетке.

Задание 19. Представить число -6,025­(10) в форме с ПЗ в 32-разрядной сетке.

Задание 20. Представить число 0,1Е(16) в форме с ПЗ в 16-разрядной сетке.

 

Представление чисел в форме с ПЗ и смещённым порядком.

Смещённый порядок Здесь - истинный порядок, а N=2k, где число k – число двоичных разрядов отведённое для представления (или Рсм). Всегда Рсм>0.

Короткий (32 разряда) формат представления чисел с ПЗ и смещённым порядком в ЕС ЭВМ

знак числа Рсм мантисса
0 1 3 4 7 8 11 12 15 16 19 20 23 24 27 28 31

Здесь , , - шестнадцатеричные разряды. Следовательно содержимое разрядной сетки может быть представлено числом . При таком представлении нормализация проводится для шестнадцатеричного числа. При определении смещённого порядка число N в шестнадцатеричной С. С. будет равно 40(16).

В ЕС ЭВМ существуют также длинный (64 двоичных разряда) и расширенный (128 двоичных разряда) форматы. В них расширяется только поле отводящееся под мантиссу.

Пример. Представить число -0,01(10) в форме с ПЗ и смещённым порядком в коротком формате ЕС ЭВМ.

Переведём число в шестнадцатеричную С. С. . Проведя нормализацию этого числа получим мантиссу (-0,2815С3)(16), а порядок (-1)(16). Определим смещённый порядок.

.

 

 

Расположим число в 32-х разрядной сетке

знак числа Р М
0 1 1 1 1 1 1 0 0 1 0 1 0 0 0 1 1 1 1 0 1 0 1 1 1 0 0 0 0 1 1
B F F C

Следовательно в памяти ЕС ЭВМ число -0,01(10) будет представлено шестнадцатеричным словом BF28F5C3.

Задание 21. Представить число -43,375(10) в форме с ПЗ и смещённым порядком в коротком формате ЕС ЭВМ. Содержимое разрядной сетки представить 16-ричным словом.

Задание 22. Представить число 17,1(10) в форме с ПЗ и смещённым порядком в длинном формате ЕС ЭВМ.

Задание 23. Представить число -0,0625(10) в форме с ПЗ и смещённым порядком в коротком формате ЕС ЭВМ. Содержимое разрядной сетки представить 16-ричным словом.

Задание 24. Содержимое 32-х разрядной сетки ЕС ЭВМ представлено словом С3180000(16). Определить какое десятичное число записано в разрядной сетке.

 

1.1.4. Представление алфавитно-цифровой информации.

Используются различные системы соответствия символов (цифр, букв, математических и служебных знаков) их двоичному представлению. Это ДКОИ – двоичный код для обработки информации (8 разрядное представление символа), КОИ-8 – код обмена информацией (8 разрядов), КОИ-7 – код обмена информацией (7 разрядов).

байт байт   байт
символ символ   символ
алфавитно-цифровая информация Соответствующие таблицы кодирования символов даны в [1].

Пример. Представить запись «СМ-4» в ДКОИ.

байт байт байт байт
С М -

Система представления данных состоящих только из десятичных цифр использует двоично-десятичное кодирование. Соответствие десятичных цифр их 2-10-м кодам дано в таблице 1. Не используемые в таблице 1 комбинации (1010 – 1111) применяются для представления значков чисел и зоны в соответствии с табл. 2.


Таблица 1

десятичная цифра 2-10 код

 

Таблица 2

  ДКОИ КОИ-8
+ - зона

Существуют два специальных формата для многоразрядных десятичных чисел:

зонный формат

зона цифра зона цифра   знак цифра
байт байт   байт

упакованный формат

цифра цифра   цифра знак
байт   байт

В упакованном формате число байтов должно быть целым.

Пример. Представить десятичное число -5901 в зонном и упакованном форматах ДКОИ.

зона зона зона знак число в зонном формате

 

(*) знак число в упакованном формате (*) – дополнение до целого числа байтов

 

Задание 25. Представить запись «A/B-I» в ДКОИ и КОИ-8 используя таблицы в [1].

Задание 26. Представить последовательность десятичных чисел -17+0-10 в зонном формате ДКОИ.

Задание 27. Представить последовательность десятичных чисел +10-187-4 в упакованном формате КОИ-8.

 

Арифметические основы вычислительной техники.

Так как двоичная С. С. и десятичная С. С. принадлежат к одному классу позиционных аддитивных С. С. с естественным порядком весов, то правила выполнения арифметических операций над числами в этих С. С. одинаковы.

Пример. Выполнить четыре арифметических операции над числами

А=1001(2) и В=11(2).

+1001

 

1001

 

х1001

 

-1001
-011  
 
 

 

1.2. Арифметические основы вычислительной техники.

1.2.1. Прямой, обратный и дополнительный коды чисел.

Коды целых и дробных чисел, представленных в форме с ФЗ, формируются одинаково. Вопрос о том, какое число закодировано – целое или дробное, решается по формату с которым работает ЭВМ.

Прямой код представляет собой запись самого числа с соответствующим знаком. Знак «+» кодируется 0, а знак «–» кодируется 1 и записывается крайним слева (для наглядности будем выделять знаковый разряд рамкой).

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

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

Задание 28. Представить число -0,111(2) в прямом, обратном и дополнительных кодах.

Задание 29. Представить число -10000(2)­ в прямом, обратном и дополнительных кодак.

 

1.2.2. Сложение и вычитание двоичных чисел.

Сложение и вычитание чисел представленных в форме с ФЗ.

Сложение и вычитание чисел А и В в форме с ФЗ сводится в ЭВМ к суммированию обратных или дополнительных кодов этих чисел с учётом знаков.

При суммировании дополнительных кодов чисел А и В сумма S получается в дополнительном коде: Адопдоп=Sдоп.

При суммировании обратных кодов чисел А и В сумма S получается в обратном коде: Аобробр=Sобр

всегда, за исключением случая, когда В<0. В этом случае, если есть перенос из знакового разряда, нужна коррекция результата суммирования S’ путём добавления 1 к его младшему разряду, т. е. при B<0: А­обробр=S’+1=Sобр.

Для этого используется перенос из знакового разряда.

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

Представим результаты вычислений таблицей и в каждой графе проведём проверку результата переводом его в прямой код Sпр.

А=9 В=3 А=-9 В=3 А=9 B=-3 (B<3) A=-9 (A<0) B=-3 (B<0)
+Аобр= +Аобр= +Аобр= +Аобр=
Вобр= Вобр= Вобр= Вобр=
Sобр= Sобр= S’= S’=
    +1 +1
    Sобр= Sобр=
Sпр=Sобр= +12(10) Sпр= 0110=-6(10) Sпр=Sобр=+6(10) Sпр= 1100=-12
+Адоп= +Адоп= +Адоп= +Адоп=
Вдоп= Вдоп= Вдоп= Вдоп=
Sдоп= Sдоп= Sдоп= Sдоп=
Sпр=Sдоп= +12(10) Sпр= 0110=-6(10) Sпр=Sдоп=+6(10) Sпр= 1100=-12
                                 

 

Задание 30. Выполнить суммирование чисел -7 и 5 в обратном и дополнительном кодах.

Задание 31. Выполнить суммирование чисел 14 и -10 в обратном и дополнительных кодах.

Задание 32. Выполнить суммирование чисел -8 и -6 в обратном и дополнительных кодах.

При выполнении операции суммирования кодов чисел, представленных в форме с ФЗ, возможно переполнение разрядной сетки ЭВМ. Существуют следующие признаки переполнения:

- одинаковые знаковые разряды слагаемых отличаются от знака результата;

- в процессе суммирования значение переносов из старшего и из знакового разрядов не совпадают.

Пример. Определить факт переполнения разрядной сетки ЭВМ при суммировании чисел представленных в обратном и дополнительном кодах при всех возможных комбинациях знаков.

Переполнение возможно лишь при равенстве знаков суммируемых чисел поэтому рассмотрим лишь пары чисел А>0, B>0 и A<0, B<0.

 

A=+9 (A>0) B=+10 (B>0) A=-9 (A<0) B=-10 (B<0) A=-9 (A<0) B=-10 (B<0)
+Аобрдоп= Вобрдоп= +Аобр= Вобр= +Адоп= Вдоп=
S= S’= Sдоп=
  +1  
  Sобр=  
                   

 

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

Задание 33. Определить, возникнет ли переполнение разрядной сетки при суммировании чисел 7(10) и 11­(10).

Задание 34. По какому признаку можно определить факт переполнения разрядной сетки при суммировании чисел -13­(10) и -8(10)­.

 

Сложение и вычитание чисел, представленных в форме с ПЗ.

Выполнение операций сложения и вычитания двоичных чисел и в форме с ПЗ аналогично соответствующим операциям над числами в форме с ФЗ, если выполняется условие РАВ. Если , то необходимо:

- провести предварительное выравнивание порядков, что приводит к денормализации одной из мантисс;

- провести нормализацию результата операции, если мантисса результата или МS<0,5. При нужна нормализация вправо, а при МS<0,5 – нормализация влево.








Дата добавления: 2016-04-06; просмотров: 812;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.06 сек.