Реферат: Системы счисления, переводы чисел

МИНИСТЕРСТВООБРАЗОВАНИЯ

РОССИЙСКОЙФЕДЕРАЦИИ.

ИРКУТСКИЙ ГОСУДАРСТВЕННЫЙ

ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ.

ФАКУЛЬТЕТ КИБЕРНЕТИКИ.

КАФЕДРА ВЫЧИСЛИТЕЛЬНОЙТЕХНИКИ.

Курсовая работа по информатике

На тему:

Системысчисления, переводы  чисел.

Выполнил: студент Иванов Д. Г.

Группы ЭВМ 05-3

Проверил: Горохов А.Г.

ИРКУТСК <st1:metricconverter ProductID=«2006 г» w:st=«on»>2006 г</st1:metricconverter>

Оглавление.

Оглавление………………………………………………………………………..1

Глава 1.История развития систем счисления……..………………………..2

1.1<span Times New Roman""> 

Зарождение систем счисления………………………………………………2

1.2<span Times New Roman"">   

Образование десятичнойсистемы счисления……………………………....4

Глава 2. Системы счисления…………….…………………………………..5

2.1Позиционныеи непозиционные системы счисления………………………5

2.2 Двоичная(бинарная) система счисления…………………………………….6

2.3.Восьмеричная система счисления…………………………………………..6

2.4. Десятеричная системасчисления…………………………………………...6

2.5. Шестнадцатеричная система счисления……………………………………7

Глава 3. Представление чиселв ЭВМ…………………………………..8

3.1<span Times New Roman"">          

Представление чисел с фиксированной и плавающей запятой.………...…8

3.2  Числа сфиксированной запятой…………………………………………….8

3.3  Числа сплавающей запятой…………………………………………………9

3.3Прямой,обратный и дополнительный коды.Модифицированный код…10

Глава 4. Перевод чисел…………………………………………………...13

4.1 Представление двоичных чисел и перевод их в десятичные…………….13

4.2 Преобразование десятичных чисел в двоичные…………………………..13

4.2.1 Метод деления……………………………………………………………..13

4.2.2 Метод умножения………………………………………………………….14

5.Постановка задачи………………………………………………………15

6.Внешнее проектирование программы…………………………………15

7.Математическая модель………………………………………………...16

8.Кодирование и отладка программы….……………………………...…17

9.Таблица тестов…………………………………………………………..23

10.Список литературы………………………………………..…………..24

Глава 1.Историяразвития систем счисления.                                                                

         1.1 Зарождение систем счисления.

На ранних ступенях развития общества люди почти неумели считать. Они отличали друг от друга совокупности двух и трех предметов;всякая совокупность, содержавшая большее число предметов, объединялась впонятии «много». Это был еще не счет, а лишь его зародыш.

         Впоследствии способность различать другот друга небольшие совокупности развивалась; возникли слова для обозначенийпонятий «четыре», «пять», «шесть», «семь». Последнее слово длительное времяобозначало также неопределенно большое количество.

         С усложнением хозяйственнойдеятельности людей понадобилось вести счет в более обширных пределах. Для этогочеловек пользовался окружавшими его предметами, как инструментами счета: онделал зарубки на палках и на деревьях, завязывал узлы на веревках, складывалкамешки в кучки и т.п. Это удобно, так как сразу визуально определяетсяколичество знаков и сопоставляется с количеством предметов, которые эти знакиобозначают. Все мы ходили в первый класс и считали там на счетных палочках –это отзвук той далекой эпохи. Кстати, от счета с помощью камешков ведут своеначало различные усовершенствованные инструменты, как, например, русские счеты,китайские счеты («сван-пан»), древнеегипетский «абак» (доска, разделенная наполосы, куда клались жетоны). Аналогичные инструменты существовали у многихнародов. Более того, в латинском языке понятие «счет» выражается словом «calculatio»(отсюда наше слово «калькуляция»); а происходит оно от слова «calculus»,означающего «камешек».

         Особо важную роль играл природныйинструмент человека – его пальцы. Этот инструмент не мог длительно хранитьрезультат счета, но зато всегда был «под рукой» и отличался большойподвижностью. Язык первобытного человека был беден; жесты возмещали недостатокслов, и числа, для которых еще не было названий, «показывались» на пальцах.

         Поэтому, вполне естественно, что вновьвозникавшие названия «больших» чисел часто строились на основе числа 10 – поколичеству пальцев на руках; у некоторых народов возникали также названия чиселна основе числа 5 – по количеству пальцев на одной руке или на основе числа 20– по количеству пальцев на руках и ногах.

         На первых порах расширение запаса чиселпроисходило медленно. Сначала люди овладели счетом в пределах несколькихдесятков и лишь позднее дошли до сотни. У многих народов число 40 долгое времябыло пределом счета и названием неопределенно большого количества. В русскомязыке слово «сороконожка» имеет смысл «многоножка»; выражение «сорок сороков»означало в старину число, превосходящее всякое воображение.

         На следующей ступени счет достигаетнового предела: десяти десятков, и создается название для числа 100. Вместе стем слово «сто» приобретает смысл неопределенно большого числа. Такой же смыслприобретают потом последовательно числа тысяча, десять тысяч (в старину эточисло называлось «тьма»), миллион.

         На современном этапе границы счетаопределены термином «бесконечность», который не обозначает, какое либоконкретное число.

Обозначение чисел в разных системах счисления

<img src="/cache/referats/22322/image002.jpg" v:shapes="_x0000_i1025">

1.2Образование десятичной системы счисления.

         В современном русском языке, а также вязыках других народов названия всех чисел до миллиона составляются из 37 слов,обозначающих числа 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17,18, 19, 20, 30, 40, 50, 60, 70, 80, 90, 100, 200, 300, 400, 500, 600, 700, 800,900, 1000 (например, восемьсот пятнадцать тысяч триста девяносто четыре). Всвою очередь названия этих 37 чисел, как правило, образованы из названий чиселпервого десятка (1, 2, 3, 4, 5, 6, 7, 8, 9) и чисел 10, 100, 1000 (например, 18= восемь на десять, 30 = тридесять и т.д.). В основе этого словообразованиялежит число десять, и поэтому наша система наименований называется десятичнойсистемой счисления.

         Из упомянутого правила в разных языкахимеются различные исключения, объясняющиеся историческими особенностямиразвития счета. В русском языке единственным исключением является наименование«сорок». Это исключение можно поставить в связь с тем, что число 40 игралонекогда особую роль, означая неопределенно большое количество.

         В тюркских языках (узбекском,казахском, татарском, башкирском, турецком и др.) исключение составляютнаименования чисел 20, 30, 40, 50, тогда как названия чисел 60, 70, 80, 90образованы из наименований для 6, 7, 8, 9. Во французском языке сохранилисьнедесятичные названия чисел 20 и 80, причем 80 именуется quatrevingt,т.е. «четыре двадцать». Здесь мы имеем остаток древнего двадцатеричногосчисления (по числу пальцев на руках и ногах). В латинском языке наименованиечисла 20 тоже недесятичное (viginti). Наименования чисел 18 и 19 образованы из названия20 с помощью вычитания: 20–2 и 20–1 (duodeviginti, undeviginti, т.е. «два от двадцати», «один от двадцати»).

Глава 2. Системы счисления.

         2.1Позиционныеи непозиционные системы счисления.

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

Системы счисления делятся на два класса позиционные инепозиционные.

В непозиционных системах любое числоопределяется как некоторая функция от численных значений совокупности цифр,представляющих это число. Простейшая, но абсолютно неудобная системасчисления. Основана на единственной цифре – единице (палочке). Позволяетзаписывать только натуральные числа. Чтобы представить число в этой системе счислениянужно записать столько палочек, каково само число. Использоваласьнецивилизованными племенами, потребности которых в счете, как правило, невыходили за рамки первого десятка. Чисто формально единичную систему счисленияможно отнести к числу основных (с основанием 1). Но, в отличие от остальныхосновных систем счисления, считать ее позиционной можно лишь с очень сильнойнатяжкой, а универсальной она вообще не является (в ней нельзя представитьноль, дроби и отрицательные числа). Римская система счисления. С помощью семицифр – I=1, V=5, X=10, L=50, C=100, D=500, M=1000 – можно весьма успешнои довольно выразительно представлять натуральные числа в диапазоне донескольких тысяч.

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

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

Позиционная система счисления– системасчисления, в которой вес цифры меняется с изменением положения цифры в числе,но при этом полностью определяется написанием цифры и местом, которое оназанимает. В частности, это означает, что вес цифры не зависит от значенийокружающих ее цифр. Такая системасчисления основывается на том, что некоторое число nединиц ( основание системы счисления ) объединяются водну единицу второго разряда, nединиц второгоразряда объединяются в одну единицу третьего разряда и т. д. Основанием системсчисления может быть любое число, больше единицы. К числу таких системотносится современная десятичная система счисления ( с основанием n=10 ). В ней для обозначения первых десяти чиселслужат цифры 0,1,…,9.

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

В отличии от непозиционной системы счисления, позиционнаясистема счисления применяется в ЭВМ.

2.2 Двоичная(бинарная) система счисления.

 В настоящиймомент – наиболее употребительная в информатике, вычислительной технике и смежныхотраслях система счисления. Использует две цифры – 0 и 1, а также символы «+» и«–» для обозначения знака числа и запятую (точку) для разделения целой идробной части. Таким образом, в двоичномсчислении любое число можно представить двумя числами: 0 и 1. Для представленияэтих чисел в цифровых системах достаточно иметь электронные схемы, которыемогут принимать два состояния, четко различающиеся значением какой-либоэлектрической величины – потенциала или тока. Одному из значений этой величинысоответствует цифра 0, другому 1. Относительная простота создания электронныхсхем с двумя электрическими состояниями и привела к тому, что двоичноепредставление чисел доминирует в современной цифровой технике. При этом 0обычно представляется низким уровнем потенциала, а 1 – высоким уровнем. Такойспособ представления называется положительной логикой.

         История развития двоичной системысчисления – одна из ярких страниц в истории арифметики. Официальное «рождение»двоичной арифметики связывают с именем Г. В. Лейбница, опубликовавшего статью,в которой были рассмотрены правила выполнения всех арифметических операций наддвоичными числами. До начала тридцатых годов XX  века двоичнаясистема счисления оставалась вне поля зрения прикладной математики. Потребностьв создании надежных и простых по конструкции счетных механических устройств ипростота выполнения действий над двоичными числами привели к более глубокому иактивному изучению особенностей двоичной системы как системы, пригодной дляаппаратной реализации. Первые двоичные механические вычислительные машины былипостроены во Франции и Германии. Утверждение двоичной арифметики в качестве общепринятойосновы при конструировании ЭВМ с программным управлением состоялось под несомненнымвлиянием работы А. Бекса, Х. Гольдстайна и Дж. Фон Неймана о проекте первой ЭВМс хранимой в памяти программой, написанной в 1946 году. В этой работе наиболееаргументировано обоснованы причины отказа от десятичной арифметики и перехода кдвоичной системе счисления как основе машинной арифметики.

        

2.3. Восьмеричная система счисления.

Используетвосемь цифр – 0, 1, 2, 3, 4, 5, 6, и 7, а также символы «+» и   «–»для обозначения знака числа и запятую (точку) для разделения целой и дробнойчастей числа. Широко использовалась в программировании в 1950-70-ые гг. Кнастоящему времени практически полностью вытеснена шестнадцатеричной системойсчисления, однако функции перевода числа из десятичной системы в восьмеричную иобратно сохраняются в микрокалькуляторах и многих языках программирования.

2.4. Десятеричная система счисления.

Используетдесять обычных цифр – 0, 1, 2, 3, 4, 5, 6, 7, 8 и 9, а также символы «+» и «–»для обозначения знака числа и запятую (точку) для разделения целой и дробнойчастей числа. Существует массовое заблуждение, будто именно десятичная системасчисления является наиболее употребительным способом записи чисел. Между тем,более внимательный анализ правил чтения и записи чисел приводит к другомувыводу: система счисления, которой мы обычно пользуемся, фактически является двойной,так как имеет основания – 10 и 1000. В частности, в русском языке известныназвания только для первых семи разрядов десятичной системы счисления ( 1 –единица, 10 – десяток, 100 – сотня, 1000 – тысяча, 10000 – тьма, 100000 –легион, 1000000 – миллион ), но предпоследние два из них (легион и тьма) давновышли из употребления, а соседние с ними (миллион и тысяча) – названия классов,а не только разрядов. Итак, фактически в русском языке остались лишь двасамостоятельных названия для десятичных разрядов: десяток и сотня. В другихязыках – аналогичная ситуация.

2.5. Шестнадцатеричная система счисления.

Используетшестнадцать цифр – 0, 1, 2, 3, 4, 5, 6, 7, 8 и 9 в их обычном смысле, а затемA=10, B=11, C=12, D=13, E=14, F=15. Также использует символы «+» и «–» дляобозначения знака числа и запятую (точку) для разделения целой и дробной частейчисла. Внедрена американской корпорацией IBM. Широко используется впрограммировании для IBM-совместимых компьютеров. С другой стороны, в некоторыхязыках сохранились и следы использования этой системы счисления в прошлом.Например, в романских языках (испанском, французском и др.) числительные от 11до 16 образуются по одному правилу, а от 17 до 19 – по другому. А в русскомязыке известен пуд, равный 16 килограммам.

BIN

OCT

DEC

HEX

001

1

1

1

010

2

2

2

011

3

3

3

100

4

4

4

101

5

5

5

110

6

6

6

111

7

7

7

1 000

10

8

8

1 001

11

9

9

1 010

12

10

A

1 011

13

11

B

1 100

14

12

C

1 101

15

13

D

1 110

16

14

E

1 111

17

15

F

10 000

20

16

10

Глава 3. Представление чисел в ЭВМ.

3.1 Представление чисел с фиксированной и плавающей запятой.

При представлении числа в двоичном коде с цифрами 0,1в каждом разряде записываются цифры 0 или 1. Так как в ЭВМ «запись» числаосуществляется с помощью технических устройств, то для представления его втакой форме необходимо располагать устройствами с двумя надежно различнымисостояниями, которым могут быть сопоставлены значения 0 или 1. Комбинация такихустройств, число которых соответствует количеству разрядов записываемого числа,может быть использована для представления чисел в ЭВМ.

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

В ЭВМ применяются две основные формы представлениячисел: полулогарифмическая – с плавающей запятой и естественная – сфиксированным положением запятой.

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

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

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

Рассмотрим подробнее эти два формата.

3.2  Числа сфиксированной запятой.

Формат для чисел с запятой, фиксированной передстаршим разрядом. В этом формате могут быть с точностью до <img src="/cache/referats/22322/image004.gif" v:shapes="_x0000_i1026">  представленычисла (правильные дроби) в диапазоне

<img src="/cache/referats/22322/image006.gif" v:shapes="_x0000_i1027">.

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

         Используют два варианта представленияцелых чисел: со знаком и без знака. В последнем случае все разряды разряднойсетки служат для представления модуля числа. В ЕС ЭВМ применяются оба указанныхварианта представления целых чисел, причем каждый из вариантов реализуется какв формате 32-разрядного машинного слова этих машин, так и в формате16-разрядного полуслова.

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

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

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

3.3  Числа сплавающей запятой.

При использовании плавающей запятой число состоит издвух частей: мантиссы m, содержащей значащиецифры числа, и порядка p, показывающего степень, в которую надо возвестиоснование числа q, чтобы полученноепри этом число, умноженное на мантиссу, давало истинное значение представляемогочисла:

<img src="/cache/referats/22322/image008.gif" v:shapes="_x0000_i1028">                                                                                                (5.1)

Мантисса и порядок представляются в двоичном коде.Обычно число дается в нормализованном виде, когда его мантисса являетсяправильной дробью, причем первая значащая цифра (единица) следуетнепосредственно после запятой: например, <img src="/cache/referats/22322/image010.gif" v:shapes="_x0000_i1029"> где m=0,1010; p=10; q=2

Порядок указывает действительное положение запятой вчисле. Код в приведенном формате представляет значение числа вполулогарифмической форме: <img src="/cache/referats/22322/image012.gif" v:shapes="_x0000_i1030">

Точность представления значений зависит от количествазначащих цифр мантиссы. Для повышения точности числа с плавающей запятойпредставляются в нормализованной форме, при которой значение модуля мантиссылежит в пределах <img src="/cache/referats/22322/image014.gif" v:shapes="_x0000_i1031">

Нормализованные двоичные числа с плавающей запятойпредставляют значения модуля в диапазоне:

   <img src="/cache/referats/22322/image016.gif" v:shapes="_x0000_i1032">

где<img src="/cache/referats/22322/image018.gif" v:shapes="_x0000_i1033"> – максимальноезначение модуля порядка.

Так, при p=7 <img src="/cache/referats/22322/image018.gif" v:shapes="_x0000_i1034"><img src="/cache/referats/22322/image021.gif" v:shapes="_x0000_i1035">

<img src="/cache/referats/22322/image023.gif" v:shapes="_x0000_i1036">

                                              <img src="/cache/referats/22322/image025.gif" v:shapes="_x0000_i1037">

Таким образом, диапазон чисел:

      <img src="/cache/referats/22322/image027.gif" v:shapes="_x0000_i1038"> 

Для расширения диапазона представляемых чисел прификсированной длине разрядной сетки (m+p) вкачестве основания системы счисления выбирается <img src="/cache/referats/22322/image029.gif" v:shapes="_x0000_i1039"><img src="/cache/referats/22322/image031.gif" v:shapes="_x0000_i1040"><img src="/cache/referats/22322/image033.gif" v:shapes="_x0000_i1041"><img src="/cache/referats/22322/image035.gif" v:shapes="_x0000_i1042"> до <img src="/cache/referats/22322/image037.gif" v:shapes="_x0000_i1043">

   m     m – 1                                                                1          p       p – 1                                   1

         …

     …

<img src="/cache/referats/22322/image038.gif" v:shapes="_x0000_s1029"><img src="/cache/referats/22322/image039.gif" v:shapes="_x0000_s1028"><img src="/cache/referats/22322/image040.gif" v:shapes="_x0000_s1027"><img src="/cache/referats/22322/image041.gif" v:shapes="_x0000_s1026">

Знак                                     Модуль мантиссы                            Знак                Модуль порядка

числа                                                                                           порядка

3.3 Прямой,обратный и дополнительный коды.Модифицированный код

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

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

Такая форма представления числа называется прямымкодом.

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

Правила для образования дополнительного и обратногокода состоят в следующем:

·<span Times New Roman"">       

для образованиядополнительного кода отрицательного числа необходимо в  знаковом разряде поставить единицу,  а все цифровые разряды инвертировать(заменить 1 на 0,  а 0 – на 1),  после чего прибавить 1 к младшему разряду;

·<span Times New Roman"">       

для образованияобратного кода отрицательного числа необходимо в знаковом разряде поставить единицу, а все цифровые разрядыинвертировать;

·<span Times New Roman"">       

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

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

В таблице 5.1 пpиведены десятичные числа и их двоичныепpедставления в тpех pазличных фоpмах. Интеpесно в ней вот что. Если начатьсчет с числа 1000 (–8) и двигаться вниз по столбцам, то в дополнительном кодекаждое последующее число получается пpибавлением единицы к пpедыдущему безучета  пеpеноса  за пpеделы  четвеpтого pазpяда  Так пpосто эту опеpацию в пpямом и обpатномкодах не осуществить. Эта особенность дополнительного кода и  явилось пpичиной пpедпочтителного пpимененияего в совpеменных микpо и миниЭВМ.

Итак, числа, пpедставленные в дополнительном коде,складываются по пpавилам двоичного сложения, но без учета каких  либо пеpеносов за пpеделы стаpшего pазpяда.Рассмотpим это на пpимеpах 5.1.

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

.

Десятичное

число

Прямой

код

Обратный

код

Дополнительный

код

-8

1000

-7

1111

1000

1001

-6

1110

1001

1010

-5

1101

1010

1011

-4

1100

1011

1110

-3

1011

1100

1101

-2

1010

1101

1110

-1

1001

1110

1111

1000

0000

1111

0000

0000

1

0001

0001

0001

2

0010

0010

0010

3

0011

0011

0011

4

0100

0100

0100

5

0101

0101

0101

6

0110

0110

0110

7

0111

0111

0111

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

Из приведенных примеров следует, что положительныечисла в прямом, обратном и дополнительном кодах совпадают. В прямом и обратномкоде нуль имеет два представления – «положительный» и «отрицательный» нуль.

Отметим, что при представлении с плавающей запятойотдельно кодируется мантисса и порядок числа. При этом возможно представлениемантисс и порядков чисел в одном и том же или разных кодах. Например, порядокчисла может быть представлен в прямом, а мантисса – в дополнительном кодах и т.п.

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

При сложении чисел, меньших единицы, в машине быть получены числа, по абсолютной величинебольшие  единицы.  Для  обнаруженияпереполнения разрядной  сетки  в ЭВМ применяются модифицированные прямой,обратный и дополнительный коды. В этих кодах знак кодируется двумяразрядами,  причем знаку «плюс»соответствует комбинация 00, а знаку «минус» — комбинация 11.

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

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

Глава 4.Перевод чисел.

еще рефераты
Еще работы по программированию, базе данных