Представљање бројева у рачунару

39
Представљање Представљање бројева у рачунару бројева у рачунару Представљање целих бројева Представљање целих бројева Бинарна аритметика Бинарна аритметика Представљање бројева у покретном Представљање бројева у покретном зарезу зарезу Представљање Представљање BCD BCD бројева бројева Представљање знакова Представљање знакова

description

Представљање бројева у рачунару. Представљање целих бројева Бинарна аритметика Представљање бројева у покретном зарезу Представљање BCD бројева Представљање знакова. Представљање целих бројева. - PowerPoint PPT Presentation

Transcript of Представљање бројева у рачунару

Page 1: Представљање бројева у рачунару

Представљање бројева Представљање бројева у рачунаруу рачунару

Представљање целих бројеваПредстављање целих бројева Бинарна аритметикаБинарна аритметика Представљање бројева у покретном Представљање бројева у покретном

зарезузарезу Представљање Представљање BCDBCD бројева бројева Представљање знаковаПредстављање знакова

Page 2: Представљање бројева у рачунару

Представљање целих бројеваПредстављање целих бројева

Ако за представљање позитивних целих Ако за представљање позитивних целих бројева употребимо бројева употребимо nn битова можемо битова можемо представити бројеве у опсегу од представити бројеве у опсегу од 00 до до 22nn – 1.– 1.

Треба наћи начин за представљање и Треба наћи начин за представљање и негативних бројева, при чему желимо да негативних бројева, при чему желимо да постигнемо:постигнемо:

Јединствен приказ нуле.Јединствен приказ нуле. Подједнаку дистрибуцију позитивних и негативних Подједнаку дистрибуцију позитивних и негативних

бројева.бројева. Једноставну детекцију знака.Једноставну детекцију знака. Једноставну имплементацију аритметичких операција.Једноставну имплементацију аритметичких операција.

Page 3: Представљање бројева у рачунару

Представљање целих бројеваПредстављање целих бројева

Означена апсолутна вредност броја. Означена апсолутна вредност броја. Непотпуни комплемент.Непотпуни комплемент. Потпуни комплемент.Потпуни комплемент. Проширена нотација.Проширена нотација.

Page 4: Представљање бројева у рачунару

Означена апсолутна вредност бројаОзначена апсолутна вредност броја

Крајњи леви бит (бит највеће тежине) Крајњи леви бит (бит највеће тежине) представља представља бит знака бројабит знака броја (0 за (0 за позитивне а 1 за негативне бројеве).позитивне а 1 за негативне бројеве).

Остатак битова представља Остатак битова представља апсолутну вредност броја.апсолутну вредност броја.

ПримерПример::

0001 10110001 1011 == +27+27

1001 10111001 1011 == -27 -27

Page 5: Представљање бројева у рачунару

Означена апсолутна вредност бројаОзначена апсолутна вредност броја

Постоје проблеми!Постоје проблеми! Не постоји јединствен приказ нуле.Не постоји јединствен приказ нуле.

+0+0 0000000000000000

- 0- 0 1000000010000000 Сабирање бројева различитог знака – Сабирање бројева различитог знака –

веома компликовано!веома компликовано!

Page 6: Представљање бројева у рачунару

Непотпуни комплементНепотпуни комплемент

Назива се и Назива се и комплемент највеће комплемент највеће цифре цифре па се стога у бинарном па се стога у бинарном систему још зове и систему још зове и јединични јединични комплементкомплемент..

И даље бит знака са вредношћу 0 И даље бит знака са вредношћу 0 представља ненегативне бројеве а представља ненегативне бројеве а са вредношћу 1 негативне бројеве. са вредношћу 1 негативне бројеве.

Page 7: Представљање бројева у рачунару

Непотпуни комплементНепотпуни комплемент

Добија се тако што се сваки бит Добија се тако што се сваки бит комплементира.комплементира.

+5+5 0000010100000101

- 5- 5 1111101011111010

Page 8: Представљање бројева у рачунару

Непотпуни комплементНепотпуни комплемент Проблеми!Проблеми! Ни овде приказ нуле није јединственНи овде приказ нуле није јединствен

00000000 = +000000000 = +0

11111111 = -011111111 = -0

Page 9: Представљање бројева у рачунару

Непотпуни комплементНепотпуни комплемент Релативно компликовано обављање Релативно компликовано обављање

аритметичких операција:аритметичких операција: код сабирања, евентуални пренос са код сабирања, евентуални пренос са

места бита знака сабира на месту места бита знака сабира на месту најмање тежине како би се добио најмање тежине како би се добио резултат у непотпуном комплементу.резултат у непотпуном комплементу.

Page 10: Представљање бројева у рачунару

Непотпуни комплементНепотпуни комплементПримерПример::

1100 00001100 0000 == - 63- 63

0100 00000100 0000 == +64+64

0000 00000000 0000 = некоректно= некоректно

+1+1

0000 00010000 0001 == +1 +1 коректно!коректно!

1

Page 11: Представљање бројева у рачунару

Потпуни комплементПотпуни комплемент Назива се и Назива се и комплемент основе комплемент основе па се па се

стога у бинарном систему још зове и стога у бинарном систему још зове и двојичнидвојични комплемент комплемент..

И даље бит знака са вредношћу 0 И даље бит знака са вредношћу 0 представља ненегативне бројеве а представља ненегативне бројеве а са вредношћу 1 негативне бројеве. са вредношћу 1 негативне бројеве.

Page 12: Представљање бројева у рачунару

Потпуни комплементПотпуни комплемент Добија се тако што се сваки бит Добија се тако што се сваки бит

комплементира (чиме се добије комплементира (чиме се добије непотпуни комплемент) па се дода 1 непотпуни комплемент) па се дода 1 на месту најмање тежине.на месту најмање тежине.

+5+5 0000010100000101

јед. компл. од +5јед. компл. од +5 1111101011111010

+1+1

- 5- 5 1111101111111011

Page 13: Представљање бројева у рачунару

Потпуни комплементПотпуни комплемент Јединствен приказ нулеЈединствен приказ нуле

0000 00000000 0000 == +0+0

1111 11111111 1111 == јед. компл.јед. компл.

+1+1

0000 00000000 0000

Page 14: Представљање бројева у рачунару

Потпуни комплементПотпуни комплемент Једноставно обављање аритметичких Једноставно обављање аритметичких

операцијаоперација код сабирања, евентуални пренос са код сабирања, евентуални пренос са

места бита знака занемари и тако места бита знака занемари и тако добије коректан резултат у потпуном добије коректан резултат у потпуном комплементу.комплементу.

Page 15: Представљање бројева у рачунару

Потпуни комплементПотпуни комплемент

ПримерПример::

1100 0001100 00011 == - 63- 63

0100 00000100 0000 == +64+64

0000 0000000 00011 = = 1 ++11коректно!коректно!

Page 16: Представљање бројева у рачунару

Потпуни комплементПотпуни комплемент Даје опсег од Даје опсег од -2-2nn-1-1 додо 22nn-1 -1 – 1– 1.. Немогуће је добити исти број Немогуће је добити исти број

негативних и позитивних бројева!негативних и позитивних бројева! Потпуни комплемент најмањег Потпуни комплемент најмањег

негативног броја је исти тај број!негативног броја је исти тај број!1000 00001000 0000

0111 11110111 1111 +1+1

1000 00001000 0000

= -27 = -128

= јединични компл.= полазни број

Page 17: Представљање бројева у рачунару

Проширена нотацијаПроширена нотација

За бројеве представљене са За бројеве представљене са mm битова назива битова назива се и се и вишак вишак 22mm-1-1, јер се сваки број представља , јер се сваки број представља као збир њега самогкао збир њега самог и вредности и вредности 22mm-1-1..

+5+5 0000010100000101

- 5 + 128- 5 + 128 0111101101111011 Практично се врши пресликавање опсега -Практично се врши пресликавање опсега -

128 до +127 на опсег од 0 до 255 (за 128 до +127 на опсег од 0 до 255 (за mm == 88).). Интересантно је и то што је овај систем Интересантно је и то што је овај систем

идентичан потпуном комплементу са идентичан потпуном комплементу са обрнутим знаком.обрнутим знаком.

Page 18: Представљање бројева у рачунару

Бинарна аритметикаБинарна аритметикаТаблица сабирања у бинарном системуТаблица сабирања у бинарном систему

Први Први сабираксабирак

00 00 11 11

Други Други сабираксабирак

+0+0 +1+1 +0+0 +1+1

СумаСума 00 11 11 00

ПреносПренос 00 00 00 11

Ако су сабирци различитог знака, прекорачење се не Ако су сабирци различитог знака, прекорачење се не може јавити.може јавити.

Ако су сабирци истог знака а резултат супротног онда Ако су сабирци истог знака а резултат супротног онда је дошло до прекорачења.је дошло до прекорачења.

И у непотпуном и у потпуном комплементу се И у непотпуном и у потпуном комплементу се прекорачење јавља ако и само ако се пренос ка месту прекорачење јавља ако и само ако се пренос ка месту бита знака разликује од преноса од места знака.бита знака разликује од преноса од места знака.

Page 19: Представљање бројева у рачунару

Представљање бројева у Представљање бројева у покретном зарезупокретном зарезу

У науци и техници честУ науци и техници честaa нотација нотација јеје

n n = = f f 10 10ee

манитиса

експонент

Page 20: Представљање бројева у рачунару

Представљање бројева у Представљање бројева у покретном зарезупокретном зарезу

Представљање бројева у рачунару Представљање бројева у рачунару на овај начин назива се на овај начин назива се покретни покретни зареззарез ( (floating point floating point ).).

Са много мање запамћених Са много мање запамћених цифара могу се представљати цифара могу се представљати бројеви из знатно већег опсега.бројеви из знатно већег опсега.

Page 21: Представљање бројева у рачунару

Представљање бројева у Представљање бројева у покретном зарезупокретном зарезу

Опсег је одређен бројем цифара у Опсег је одређен бројем цифара у експоненту а прецизност бројем експоненту а прецизност бројем цифара у мантиси.цифара у мантиси.

Замислимо да имамо троцифрену Замислимо да имамо троцифрену мантису која може бити у опсегу мантису која може бити у опсегу

0.1 0.1 || ff | < 1| < 1

или једнака 0, и двоцифрени означени или једнака 0, и двоцифрени означени експонент.експонент.

Број код кога је најзначајнија цифра Број код кога је најзначајнија цифра мантисе различита од нуле је мантисе различита од нуле је нормализованнормализован..

Page 22: Представљање бројева у рачунару

Представљање бројева у Представљање бројева у покретном зарезупокретном зарезу

Шта морамо да упамтимо?Шта морамо да упамтимо?

У ком опсегу се креће апсолутна У ком опсегу се креће апсолутна вредност бројева?вредност бројева?

5 цифара и два знака

+0.100+0.1001010-99-99 +0.999+0.9991010+99+99

199 редова величине!199 редова величине!

Page 23: Представљање бројева у рачунару

Представљање бројева у Представљање бројева у покретном зарезупокретном зарезу

Реална права је подељена на 7 области (сл. 1):Реална права је подељена на 7 области (сл. 1):1.1. Област негативног прекорачења.Област негативног прекорачења.

2.2. Негативни бројеви.Негативни бројеви.

3.3. Област негативног подкорачења.Област негативног подкорачења.

4.4. Нула.Нула.

5.5. Област позитивног подкорачења.Област позитивног подкорачења.

6.6. Позитивни бројеви.Позитивни бројеви.

7.7. Област позитивног прекорачења.Област позитивног прекорачења.

Сл.1.

Page 24: Представљање бројева у рачунару

Стандард за покретни зарез Стандард за покретни зарез IEEE 754IEEE 754

Овај стандард предвиђа три формата:Овај стандард предвиђа три формата:1.1. Формат једноструке прецизности (32 бита) – сл. 2а.Формат једноструке прецизности (32 бита) – сл. 2а.

2.2. Формат двоструке прецизности (64 бита) – сл. 2б.Формат двоструке прецизности (64 бита) – сл. 2б.

3.3. Формат проширене прецизности (80 битова).Формат проширене прецизности (80 битова).

Сл.2.

Page 25: Представљање бројева у рачунару

Стандард за покретни зарез Стандард за покретни зарез IEEE 754IEEE 754

Користи се нормализована Користи се нормализована ман-тиса и проширена ман-тиса и проширена нотација за експоненте.нотација за експоненте.

Како је мантиса Како је мантиса нормализована то се нормализована то се јединица која следи не јединица која следи не памти већ подразумева.памти већ подразумева.

KKомбинација имплицитне 1, омбинација имплицитне 1, имплицитне бинарне тачке имплицитне бинарне тачке и 23 запамћена бита и 23 запамћена бита назива се назива се сигнификант сигнификант (у (у опсегуопсегу 1 1 ss< 2)< 2)..

Page 26: Представљање бројева у рачунару

Стандард за покретни зарез Стандард за покретни зарез IEEE 754IEEE 754

Експонент 0 и максимални се не користе за Експонент 0 и максимални се не користе за нормализоване бројеве, већ имају специјалне нормализоване бројеве, већ имају специјалне намене (сл. 3).намене (сл. 3).

Када се јави резултат који је мањи од Када се јави резултат који је мањи од најмањег нормализованог броја који се може најмањег нормализованог броја који се може представити овај стандард предвиђа представити овај стандард предвиђа денормализоване бројеведенормализоване бројеве. Ови бројеви имају . Ови бројеви имају експонент 0 а имплицитна јединица је сада 0.експонент 0 а имплицитна јединица је сада 0.

Сл. 3.

Page 27: Представљање бројева у рачунару

Представљање Представљање BCD BCD бројевабројева

Бинарни бројни систем је Бинарни бројни систем је најприроднији за коришћење у најприроднији за коришћење у рачунару.рачунару.

Са друге стране, људи су навикли Са друге стране, људи су навикли на децимални систем.на децимални систем.

Зашто?

Page 28: Представљање бројева у рачунару

Представљање Представљање BCD BCD бројевабројева

Можемо да вршимо конверзију Можемо да вршимо конверзију декадних бројева у бинарне и декадних бројева у бинарне и обрнуто ...обрнуто ...

... а можемо да радимо са декадним ... а можемо да радимо са декадним бројевима који су ...бројевима који су ...

... бинарно кодирани!

Page 29: Представљање бројева у рачунару

Представљање Представљање BCD BCD бројевабројева BCD BCD бројеви (бројеви (BBinary inary CCoded oded DDecimalsecimals))..

Свака декадна Свака декадна цифра кодира се са цифра кодира се са 4 бинарне.4 бинарне.

ДекаднДекадна а

цифрацифра

BCDBCD цифрацифра

00 00000000

11 00010001

22 00100010

33 00110011

44 01000100

55 01010101

66 01100110

77 01110111

88 10001000

99 10011001

Page 30: Представљање бројева у рачунару

Представљање Представљање BCD BCD бројевабројева BCD BCD бројеви могу бити у ...бројеви могу бити у ...

BCD цифра BCD цифра

7 4 3 0

зона BCD цифра

7 4 3 0

... пакованом формату

и ...

... непакованом

формату.

Page 31: Представљање бројева у рачунару

Представљање Представљање BCD BCD бројевабројева Постоје и други бинарни кодови за Постоје и други бинарни кодови за

декадне бројеве: декадне бројеве: ‘’‘’вишак 3’’вишак 3’’ ‘’‘’2421’’2421’’ ‘’‘’5421’’5421’’ седмосегментни ...седмосегментни ...

Page 32: Представљање бројева у рачунару

Представљање знаковаПредстављање знакова

Знакови се представљају Знакови се представљају алфанумеричким кодовима.алфанумеричким кодовима.

ASCIIASCII (American Standard Code for (American Standard Code for Information Interchange)Information Interchange)..

Page 33: Представљање бројева у рачунару

ASCII ASCII табелатабела

Page 34: Представљање бројева у рачунару

Проширена Проширена ASCII ASCII табелатабела

Page 35: Представљање бројева у рачунару

Представљање знаковаПредстављање знакова

EBCDIC (Extended Binary Coded Decimal EBCDIC (Extended Binary Coded Decimal Interchange Code).Interchange Code).

UNICODE – je UNICODE – je нови стандард за 16-битне нови стандард за 16-битне алфанумеричке кодовеалфанумеричке кодове..

Обухваћен је стандардом Обухваћен је стандардом ISO/IEC ISO/IEC (International Organization for (International Organization for Standardization/International Standardization/International Electrotechnical Commision) Electrotechnical Commision) 10646 па се 10646 па се често и означава као често и означава као Unicode/10646.Unicode/10646.

Page 36: Представљање бројева у рачунару

Представљање знаковаПредстављање знакова

Са 16 битова имамо 65536 различитих Са 16 битова имамо 65536 различитих кодних речи тако да овај код који кодних речи тако да овај код који садржи подршку и многим другим садржи подршку и многим другим језицима осим енглеског.језицима осим енглеског.

У ствари, погрешно је мислити о У ствари, погрешно је мислити о UNICODEUNICODE-у тек као о коду са 65536 -у тек као о коду са 65536 могућих различитих знакова. Ради се о могућих различитих знакова. Ради се о новом начину схватања и третирања новом начину схватања и третирања знакова.знакова.

Page 37: Представљање бројева у рачунару

Представљање знаковаПредстављање знакова

А А је различито од је различито од BB и од и од aa али је исто али је исто

што и што и А А или или АА или или АА..

Page 38: Представљање бројева у рачунару

Представљање знаковаПредстављање знакова

Свако слово из произвољног алфабета Свако слово из произвољног алфабета записује се у обликузаписује се у облику

U+0041U+0041

што се назива што се назива кодна тачкакодна тачка..

Hello Hello U+0048 U+0065 U+006C U+006C U+0048 U+0065 U+006C U+006C U+006FU+006F

Кодирање?Кодирање?

0000 48 0048 00 65 0065 00 6C 006C 00 6C 006C 00 6F6F

илиили

48 0048 00 65 0065 00 6C 006C 00 6C 006C 00 6F6F 00 00

Page 39: Представљање бројева у рачунару

Представљање знаковаПредстављање знакова

Традиционални двобајтни метод Традиционални двобајтни метод смештања назива се смештања назива се UCS-2 UCS-2 или или UTF-16UTF-16, , али се користи и али се користи и UTF-UTF-8.8.

А зона I зона O зона R зона

Садржи кодове за алфабете, слогове и симболе

Кодови за идеограме

Тренутно слободна

За сада забрањена за

употребу