Главная Случайная страница


Полезное:

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


Категории:

АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника






Лекция 1

1.1. Двоичное кодирование в позиционной системе счисления. Обратный и дополнительный код для отрицательных целых чисел   С помощью цифровых схем можно производить различные вычисления. Поэтому существует необходимость представлять десятичные числа в виде комбинации 0 и 1. Представление числа только двумя знаками называется бинарным представлением.   Коды, которые используют только два знака, называются бинарными кодами.   Существует множество бинарных кодов. Но на практике применяются только некоторые из них. Бинарные коды имеют регламентированную рядность. Каждая десятичная цифра в определенном коде представляется определенным количеством бинарных разрядов. Бинарный разряд может принимать значение 0 или 1. Бинарный разряд, или базовая единица данных называется битом (от англ.: binary digit — двоичная цифра).   Бит означает один бинарный разряд. Он может быть равен 0 или 1.   Все используемые системы счисления являются позиционными системами счисления. В позиционной системе счисления позиция цифры однозначно связана со значением числа посредством особого фактора увеличения в виде степенного числа. В непозиционных системах счисления величина числа не зависит от положения цифры в записи числа.   В десятичной системе счисления каждый разряд числа умножается на 10 в соответствующей степени:   12345 = 1 · 104 + 2 · 103 + 3 · 102 + 4 · 101 + 5 · 100 = 10000 + 2000 + 300 + 40 + 5.   Чтобы посчитать от 0 до 9 нужен ноль и девять цифр в колонке единиц. Число десять записывается как 1 в колонке десятков и 0 в колонке единиц.   Если в распоряжении имеются только цифры 0 и 1, то каждый разряд числа умножается на степень числа два.   Перевести двоичное число в десятичное можно следующим образом. Разряды числа, в которых находится 0, не представляют интереса, важны те, где расположена единица.   101102 = 1 · 24 + 0 · 23 + 1 · 22 + 1 · 21 + 0 · 20 = 16 + 0 + 4 + 2 + 0 = 2210.  
24 = 16 23 = 8 22 = 4 21 = 2 20 = 1
         

 

Рассмотрим, как переводится десятичное число в двоичное на примере десятичного числа 900. При преобразовании определим прежде всего единицу с наибольшим значением, а затем единицы с меньшими значениями. Единица со значением 210 = 1024 не подходит, так как 1024 > 900. Следовательно, наибольшая единица будет соответствовать разряду 29 = 512. Вычитаем из 900 число 512 и получаем: 900 - 512 = 388. Подбираем следующий подходящий разряд двоичного числа для десятичного числа 388. Это 28 = 256. Теперь остаток: 388 - 256 = 132. Значит берем 27 = 128. Проводим операцию вычитания: 132 - 128 = 4. Ясно, что 4 = 22. Остатка больше нет. таком образом мы определили все разряды двоичного числа, отличные от 0. Следовательно, все остальные цифры двоичного числа являются нулями. В итоге получили:

 

90010 = 512 + 256 + 128 + 4 = 1 · 29 + 1 · 28 + 1 · 27 + 0 · 26 + 0 · 25 + 0 · 24 + 0 · 23 + 1 · 22 + 0 · 21 + 0 · 20 = 11100001002.

 

2n 29 = 512 28 = 256 27 = 128 26 = 64 25 = 32 24 = 16 23 = 8 22 = 4 21 = 2 20 = 1
                     

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

 

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

 

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

 

1.2. Арифметические операции над целыми числами в дополнительном коде. Представление целых чисел произвольной длины и операции над ними

 

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

 

0 + 0 = 0,

0 + 1 = 1,

1 + 0 = 1,

1 + 1 = 10,

1 + 1 + 1 = 11.

 

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

 

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

 

      1 1  
+          
         
   
           

 

Для проверки правильности вычислений можно преобразовать двоичные числа в десятичные, провести операцию с ними, а затем перевести результат в двоичную систему счисления. В нашем случае: 11 + 19 = 30.

 

При вычитании действуют следующие правила:

 

0 - 0 = 0,

1 - 0 = 1,

1 - 1 = 0.

 

Отрицательный результат операции 0 - 1 пока не рассматриваем.

 

При вычитании вычитаемое число пишется под уменьшаемым. Вычитание начинается с наименьшего разряда.

 

           
-          
         
   
           

 

Здесь не возникло никаких трудностей, так как не было операции 0 - 1. Чтобы проводить такую операции, нужно заимствовать единицу из соседнего старшего разряда. Тогда получаем: 10 - 1 = 1. После чего в старшем разряде получается 0. Пример:

 

      10    
-          
         
   
           

 

В компьютерной технике вычитание производится добавлением дополнения к вычитаемому числу. Рассмотрим вычитание с дополнением на примере десятичной системы счисления. Допустим, что автомобиль имеет пятиразрядный спидометр. который в данный момент показывает, что автомобиль уже проехал 95 000 км. Если он проедет еще 15 000 км, то спидометр покажет 10 000 км, так как у него нет шестого разряда, чтобы показать число 110 000. Число 10 000 получается, если из 95 000 вычесть 85 000. Иными словами, разность 95 000 - 85 000 = 10 000 равнозначна при пяти разрядах сумме 95 000 + 15 000 = 10 000.

 

В двоичной системе вычитание в дополнительном коде производится аналогичным образом. Например, при четырех разрядах надо найти разность 1111 - 111 = 1000 (15 - 7 = 8), это равносильно нахождению суммы 1111 + 1001 = 11000 (15 + 9 = 24), так как пятого разряда нет и мы получим: 1111 + 1001 = 1000 (15 + 9 = 8). Как определить число 1001 (9)? Для того чтобы определить дополнение вычитаемого числа, нужно знать количество разрядов, с которым предстоит работать. В нашем случае их 4 (в компьютерной технике число разрядов, с которыми может работать компьютер, тоже известно заранее). Вычитаемое число 111 в случае четырех разрядов выглядит так: 0111. Проинвертировав это число (то есть поменяв нули и единицы местами), получаем 1000. Это число на 1 меньше искомого дополнения 1001. Следовательно, чтобы найти дополнение нужно выполнить инвертирование вычитаемого числа и затем добавить к нему 1.

 

В двоичной системе дополнение и вычитаемое число дополняют друг друга при n-разрядном представлении до 2n. Например, в нашем случае: 1001 + 111 = 10000 (9 + 7 = 16 = 24).

 

Если вычитаемое число больше, чем уменьшаемое, то в результате получится отрицательное число. Например, 27 - 47 = -20. В двоичной системе счисления этому примеру соответствует разность 11011 - 101111. Проведем вычитание в дополнительном коде. Инвертируем 101111, получаем: 010000. Прибавляем к результату единицу: 010000 + 1 = 010001. Полученное дополнение складываем с уменьшаемым, приписав уменьшаемому 0 в старшем разряде: 011011 + 010001 = 101100. Если в расчетах используется только 6 разрядов, то получиться 101100. Дополнительный седьмой разряд будет нужен для определения, является число положительным или отрицательным. Если бы уменьшаемое число было больше вычитаемого, то перехода в седьмой разряд не произошло бы, следовательно там бы был 0 (разность была бы положительной). Таким образом можно определять с помощью седьмого дополнительного разряда, является число положительным (тогда в этом разряде будет 0) или отрицательным (в дополнительном разряде находится 1).

 

Однако полученное число 101100 в десятичной системе счисления равно 44, а вовсе не -20. Но мы-то теперь знаем, что это отрицательное число, а не положительное (каковым является 44), так как в дополнительном разряде расположена 1. Следовательно, его величина определяется иначе. Для этого нужно провести инверсию числа: 010011. А затем добавить к нему единицу: 010011 + 1 = 010100 (20). Полученный результат как раз и характеризует абсолютную величину отрицательного числа (1)1011002 = -2010 (то есть его модуль).

 

Цифровая техника всегда имеет известную разрядность (например, 8, 16, 32 или 64 разряда). Поэтому наибольший разряд всегда известен и может рассматриваться как дополнительный знаковый разряд.

При умножении двоичных чисел действуют следующие правила:

 

0 · 0 = 0,

0 · 1 = 0,

1 · 0 = 0,

1 · 1 = 1.

 

Приведем пример:

 

    ×        
             
       
+            
             
   
             

 

 

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

 

 


<== предыдущая | следующая ==>
Цели и задачи и основные направления маркетинговых исследований | Значение инвестиций

Date: 2015-08-15; view: 220; Нарушение авторских прав; Помощь в написании работы --> СЮДА...



mydocx.ru - 2015-2024 year. (0.006 sec.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав - Пожаловаться на публикацию