Главная              Рефераты - Радиотехника

Системы счисления - реферат

  1. Происхождение и история развития систем счисления

1.1 Границы счета


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

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

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

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

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

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

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

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


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, т.е. «два от двадцати», «один от двадцати»).


1.3 Развитие понятия числа


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

Так, в вавилонской системе мер веса (и денег) 1 талант составлял 60 мин, а одна мина – 60 шекелей. Соответственно с этим в вавилонской математике широко употреблялись шестидесятиричные дроби. В древнеримской весовой (и денежной) системе 1 асс делился на 12 унций; сообразно с этим римляне пользовались двенадцатиричными дробями.

Наши «обыкновенные дроби» широко употреблялись древними греками и индийцами. Правила действий с дробями, изложенные индийским ученым Брамагуптой (VIII век н.э.), лишь немногим отличаются от наших. Наша запись дробей тоже совпадает с индийской; только дробной черты индийцы не писали; греки записывали сверху знаменатель, а снизу числитель.

Индийской обозначение дробей и правила действий над ними были усвоены в IX веке в мусульманских странах благодаря узбекскому ученому Мухаммеду Хорземскому (аль-Хваризми). Они были перенесены в Западную Европу итальянским купцом и ученым Леонардо Фибоначчи из Пизы (XIII век).

Наряду с «обыкновенными» дробями до XVII века применялись (преимущественно в астрономии) шестидесятиричные дроби. Они были вытеснены десятичными дробями, введенными голландским купцом и выдающимся инженером-ученым Симоном Стевином (1548 - 1620).

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

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

1.4 Системы нумерации некоторых народов


1.4.1 Древнегреческая нумерация


В древнейшее время в Греции была распространена т.н. аттическая нумерация. Числа 1, 2, 3, 4 обозначались черточками , , ,. Число 5 записывалось знаком (древнее начертание буквы «пи», с которой начинается слово «пенте» – пять); числа 6, 7, 8, 9 обозначались , , , . Число 10 обозначалось (начальной буквой слова «дека» – десять). Числа 100, 1000 и 10000 обозначались , , . Числа 50, 500, 5000 обозначались комбинациями знаков 5 и 10, 5 и 100, 5 и 1000. Общую запись чисел в аттической нумерации иллюстрирует пример 1.1.


Пример 1.1 Запись чисел в аттической системе счисления


,

,

,

.


В третьем веке до н.э. аттическая нумерация была вытеснена так называемой ионийской системой. В ней числа 1 – 9 обозначались первыми девятью буквами алфавита; числа 10, 20, 30, … , 90 – следующими девятью буквами; числа 100, 200, … , 900 – последними девятью буквами.


Таблица 1.1 Обозначение чисел в ионийской системе нумерации


Обозна-

Чение

Название Значе-ние Обозна-чение Название Значе-ние Обозна-чение Назва-ние Значе-ние

Альфа 1

Йота 10

Ро 100

Бета 2

Каппа 20

Сигма 200

Гамма 3

Лямбда

30

Тау 300

Дельта 4

Мю 40

Ипсилон

400

Эпсилон

5

Ню 50

Фи 500

Фауб 6

Кси 60

Хи 600

Дзета 7

Омикрон 70

Пси 700

Эта 8

Пи 80

Омега 800

Тэта 9
Коппа 90
Сампи 900

Следует отметить, что буквы «фау», «коппа» и «сампи» отсутствуют в современном греческом алфавите.

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

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


Пример 1.2 Запись чисел в ионийской системе счисления


,

,

,

,

.


Такую же алфавитную нумерацию имели в древности евреи, арабы и многие другие народы Ближнего Востока.


1.4.2 Славянская нумерация


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


Таблица 1.2 Обозначение чисел в древнеславянской системе нумерации


Обозна-чение Название Значе-ние Обозна-чение Название Значе-ние Обозна-чение Назва-ние Значе-ние

Аз 1

И 10

Рцы 100

Веди 2

Како 20

Слово 200

Глаголь 3

Люди 30

Твердо 300

Добро 4

Мыслите 40

Ук 400

Есть 5

Наш 50

Ферт 500

Зело 6

Кси 60

Хер 600

Земля 7

Он 70

Пси 700

Иже 8

Покой 80

Омега 800

Фита 9

Червь 90

Цы 900

В России славянская нумерация сохранилась до конца XVII века. При Петре I возобладала так называемая «арабская нумерация», которой мы пользуемся и сейчас. Славянская нумерация сохранялась только в богослужебных книгах. В таблице 1.2 приведены славянские цифры.

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

Пример 1.3 иллюстрирует написание чисел в славянской системе нумерации.


Пример 1.3 Запись чисел в древнеславянской системе счисления


,

,

,

.


1.4.3 Римская нумерация


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

В позднейшем своем виде римские цифры выглядят так: , , , , , , .

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

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


Пример 1.4 Запись чисел римскими цифрами


,

,

,

.


Выполнение арифметических действий над многозначными числами в этой записи очень громоздко и трудно. Тем не менее римская нумерация преобладала в Италии до XIII века, а в других странах Западной Европы - до XVI века.


1.4.4 Вавилонская поместная нумерация


В древнем Вавилоне примерно за 40 веков до нашего времени создалась поместная (позиционная) нумерация, т.е. такой способ изображения чисел, при котором одна и та же цифра может обозначать разные числа, смотря по месту, занимаемому этой цифрой. Наша теперешняя нумерация - тоже поместная, однако в вавилонской поместной нумерации ту роль, которую играет у нас число 10, играло число 60, и потому эту нумерацию называют шестидесятиричной. Числа, меньшие 60, обозначались с помощью двух знаков: для единицы и для десятка . Они имели клинообразный вид, так как вавилоняне писали на глиняных дощечках палочками треугольной формы. Эти знаки повторялись нужное число раз. При отсутствии промежуточного разряда применялся знак . Запись чисел до 60 показана в примере 1.5. Способ обозначения чисел, больших 60 сведен в таблицу 1.3.


Пример 1.5 Запись вавилонской клинописью чисел до 60


,


,

,

.


Таблица 1.3 Запись вавилонской клинописью чисел, больших 60


Обозначение Значение Способ образования

302

1295

3725

7203


Шестидесятиричная запись целых чисел не получила распространения за пределами ассиро-вавилонского царства, но шестидесятиричные дроби проникли далеко за эти пределы: в страны Среднего Востока, Средней Азии, в Северную Африку и Западную Европу. Они широко применялись, особенно в астрономии, вплоть до изобретения десятичных дробей. Следы шестидесятиричных дробей сохраняются и поныне в делении углового и дугового градуса (а также часа) на 60 минут и минуты на 60 секунд.


1.4.5 Индийская поместная нумерация


В различных областях Индии существовали разнообразные системы нумерации. Одна из них распространилась по всему миру и в настоящее время является общепринятой. В ней цифры имели вид начальных букв соответствующих числительных на древнеиндийском языке – санскрите (алфавит «деванагари»).

Первоначально этими знаками представлялись числа 1, 2, 3, … , 9, 10, 20, 30, … , 90, 100, 1000; с их помощью записывались другие числа. Впоследствии был введен особый знак (жирная точка или кружок) для указания пустующего разряда; знаки для чисел, больших 9, вышли из употребления, и нумерация «деванагари» превратилась в десятичную поместную систему. К середине VIII века позиционная система нумерации получает в Индии широкое применение. Примерно в это время она проникает и в другие страны (Индокитай, Китай, Тибет, в Иран и др.). Решающую роль в распространении индийской нумерации в арабских странах сыграло руководство, составленное в начале IX века узбекским ученым Мухаммедом из Хорезма (аль-Хваризми). Оно было переведено в Западной Европе на латинский язык в XII веке. В XIII веке индийская нумерация получает преобладание в Италии. В других странах Западной Европы она утверждается в XVI веке. Европейцы, заимствовавшие индийскую нумерацию от арабов, называли ее «арабской». Это исторически неправильное название удерживается и поныне.

Из арабского языка заимствовано и слово «цифра» (по-арабски «сыфр»).

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


2 Основные понятия и определения


Выше мы говорили о системах счисления, не вдаваясь в подробности этого понятия. Каково же научное определение системы счисления?

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

В зависимости от способа изображения чисел с помощью цифр системы счисления делятся на позиционные и непозиционные.

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

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

В вычислительной технике непозиционные системы не применяются.

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

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

, где: (2.1)

основание системы счисления (целое положительное число, равное числу цифр в данной системе);

– любые цифры из интервала от нуля до .

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

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


Пример 2.1 Способ образования десятичного числа


Для десятичной системы соответствия между позицией и весом следующее:

(2.2)

в общем случае:

(2.3)

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

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

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

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


3 Двоичная система счисления: основные сведения


3.1 История возникновения двоичной системы счисления


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

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

3.2 Основные понятия машинной арифметики


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

  • Отверстие есть или отсутствует (перфолента или перфокарта);

  • Материал намагничен или размагничен (магнитные ленты, диски);

  • Уровень сигнала большой или маленький.

Существуют специальные термины, широко используемые в вычислительной технике: бит, байт и слово.

Битом называют один двоичный разряд. Крайний слева бит числа называют старшим разрядом (он имеет наибольший вес), крайний справа – младшим разрядом (он имеет наименьший вес).

Восьмибитовая единица носит название байта.

Многие типы ЭВМ и дискретных систем управления перерабатывают информацию порциями (словами) по 8, 16 или 32 бита (1, 2 и 4 байта). Двоичное слово, состоящее из двух байт, показано на рис. 3.1.




Рис. 3.1 Бит, байт и слово



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


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


Совершенно очевидно, что двоичное число представляется последовательностью нулей и единиц – разрядов. Как и в любой позиционной системе, каждому разряду присвоен определенный вес – показатель степени основания системы. Веса первых 10 позиций представлены в таблице 4.1.


Таблица 4.1 Веса первых десяти позиций двоичной системы счисления


Позиция 9 8 7 6 5 4 3 2 1 0
Вес 512 256 128 64 32 16 8 4 2 1

Образование


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

Как и в десятичной системе, в двоичной системе счисления для отделения дробной части используется точка (двоичная точка). Каждая позиция слева от этой точки также имеет свой вес – вес разряда дробной части числа. Значение веса в этом случае равно основанию системы счисления (т.е. двойке), возведенному в отрицательную степень.

Получить десятичное число из двоичного чрезвычайно просто. Согласно формуле 2.3 для двоичной системы счисления получаем:

(4.1)

Пример 4.1 иллюстрирует процесс получения десятичного числа из двоичного.


Пример 4.1 Перевод двоичного числа в десятичное



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


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


4.2.1 Метод вычитания

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


Пример 4.2 Перевод десятичного числа в двоичное методом вычитания



4.2.2 Метод деления

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

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


Пример 4.3 Перевод десятичного числа в двоичное методом деления


2







148

74

2






1

74

37

2






0

36

18

2






1

18

9

2






0

8

4

2






1

4

2

2






0

2

1

2






0

0 0







1

старший разряд

(10010101)2=(149)10

 ответ



4.2.3 Метод умножения

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

Число умножается на 2, если результат 1, то в старший разряд записывается единица, если нет, то нуль. Умножаем на 2 дробную часть результата и повторяем процедуру. И так далее до получения нужной степени точности или до обнуления результата.


Пример 4.4 Перевод десятичного числа в двоичное методом умножения



4.3 Арифметические действия над двоичными числами


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


Таблица

сложения

0 + 0 = 0
0 + 1 = 1
1 + 0 = 1
1 + 1 = 10

Таблица

умножения

0 * 0 = 0
0 * 1 = 0
1 * 0 = 0
1 * 1 = 1

Таблица

вычитания

0 0 = 0
1 0 = 1
1 1 = 1
10 1 = 1


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


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


Пример 4.5 Сложение двоичных чисел и


+ 101101
111110

010011

– поразрядная сумма без учета переносов


+ 1011000 – переносы

0010011



1001011

– поразрядная сумма без учета повторных переносов


+ 0100000 – повторные переносы
1001011

1101011 – окончательный результат

Легко произвести проверку:

,

,

,

.


Пример 4.6 Сложение двоичных чисел и


+ 110, 1011
10111, 10101

10001, 00011

– поразрядная сумма без учета переносов


+ 11 1, 1 – переносы
10001, 00011

11100, 01011

– поразрядная сумма без учета повторных переносов


+ 1 ,
– повторные переносы
11100, 01011

11110, 01011 – окончательный результат

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


4.3.2 Двоичное вычитание


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


Пример 4.7 Вычитание двоичных чисел и


11010, 1011
1101, 01111

1101, 00111

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

Рассмотрим четырехразрядный десятичный счетчик, какие в автомобиле отсчитывают пройденный путь. Пусть он показывает число 2, если вращать его в обратном направлении, то сначала появится 1, затем 0, после 0 появится число 9999. Сложим, к примеру, 6 с этим числом:

+ 6
9999

10005


Если пренебречь единицей переноса и считать 9999 аналогом –1, то получим верный результат: .

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

Двоичное дополнение числа определяется как то число, которое будучи прибавлено к первоначальному числу, даст только единицу переноса в старшем разряде.


Пример 4.8 Двоичное дополнение числа


+ 010101111 – число
101010001 – двоичное дополнение

1000000000 – сумма

 – единица переноса


Для получения двоичного дополнения необходимо:

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

    010101111 – число
    101010000 – обратный код
  • прибавить к обратному коду единицу, образовав таким образом дополнительный код:

+ 101010000 – обратный код
1

101010001 – дополнительный код

Пример 4.9 Вычитание в дополнительном коде


– обратный код,

– дополнительный код.

1001012=510 (верно).


4.3.3 Двоичное умножение


Умножение двух двоичных чисел выполняется так же, как и умножение десятичных. Сначала получаются частичные произведения и затем их суммируют с учетом веса соответствующего разряда множителя.