В вычислительных машинах вся информация представляется в двоичной форме, а для выполнения вычислений используется непосредственно двоичная система счисления.
Арифметические операции с двоичными числами производятся так же, как с десятичными, с той лишь разницей, что в десятичной системе цифры каждого разряда возрастают в порядке 1,2,…,8,9, а при достижении величины 10 в этом разряде записывается 0 и делается перенос единицы в старший разряд. В двоичной системе используются только два символа 0 и 1, поэтому цифры в каждом разряде могут изменяться только в пределах этих двух значений, после этого происходит перенос в более старший разряд.
Таблица 1. -Таблица сложения двух бинарных чисел, имеет следующий вид:
Здесь 10 – это 2 в двоичной системе счисления.
Например:
1110,01(2)10111,011(2)
+ 1010,10(2) + 11101,101(2)
11000,11(2) 110101,000(2)
Обычно для представления положительных и отрицательных чисел используются величины со знаками, причем при представлении положительных чисел знак «+» можно опускать, а знак «–» при изображении отрицательных чисел должен ставиться, что для реализации на вычислительных машинах неудобно. В вычислительных машинах используется форма представления чисел в дополнительных кодах, а знаки «+» и «–» используются для указания арифметических операций.
В двоичной системе счисления числа могут быть представлены в форме дополнения до основания системы счисления, то есть до 2. В двоичном дополнительном коде всем положительным числам предшествует 0, а отрицательным числам – единица. Таким образом, при представлении чисел в дополнительном коде крайний левый бит (старший) является знаковым: 0 означает положительное число, а 1 – отрицательное.
1011 1100 101 110 111 000 001 010 011 0100 0101
-5 -4 -3 -2 -1 0 1 2 3 4 5
Числа, стоящие по разные стороны от нуля, являются взаимно дополнительными, то есть их сумма всегда равна 0. Чтобы представить двоичное число в дополнительной форме, его инвертируют (заменяют 0 на 1, а 1 – на 0) прибавляют к нему 1. Операция вычитания выполняется путем сложения дополнительных кодов.
Пример:
Выполнить вычитание 10111,1–1010,1.
На первом этапе необходимо указанные числа выровнять по значности (они должны иметь одинаковое количество разрядов) и представить в дополнительном коде.
[10111,1]доп.= 0 10111,1
[ –01010,1]доп.= 1 10101,0 + 00000,1 = 1 10101,1.
На втором этапе выполняется вычитание как сложение с дополнительным числом, то есть:
0 10111,1
+ 1 10101,1
0 01101,0 = 1101.
Операции умножения, деления, возведения в степень и вычисления функций процессор не выполняет, их необходимо выполнять программным путем, используя сдвиги влево и вправо. Сдвиг двоичного числа на одну позицию влево приводит к его удвоению подобно тому, так сдвиг десятичного числа на одну позицию вправо – к его уменьшению на 10. Сдвиг двоичного числа на одну позицию вправо делит его пополам.
Контрольные вопросы и примеры
1. Что понимается под системой счисления?
2. Чем отличается позиционная система счисления от непозиционной?
3. Дайте определение базиса и основания позиционной системы счисления.
4. Как перевести число из 10→ 2, из 10→ 16?
5. Как перевести число из 2→ 10, из 8→10, из 16→10?
6. Каков принцип построения позиционных систем счисления?
7. Как изображаются числа в дополнительном коде?
8. Опишите схему вычитания чисел с помощью дополнительного кода.
9. Перевести числа из одной системы счисления в другую:
а) 625(10)→(2);б) 3628,5(10) →(16);в) 1024,4(10) → (8);
г) 134,6(8) →(10);д) –ВСО(16) →(10).
10. Записать числа в дополнительном коде:
а) 1563,04(10) г) –3А01(16)
б) –2,149(10)д) –01010,101(2)
в) –0,1001101(2)е) –37,54(8)
11. Выполните арифметические операции в двоичной системе:
а) 1011,11б)1011,101
+ 101,11 - 110,11
12. Комплексное задание: в таблице 2 приведены по вариантам числа в десятичной, двоичной и восьмеричной системах счисления:
Таблица 2.Системы счисления
№ варианте | Десятичная система | Двоичная система | Восьмеричная система |
1 | 2 | 3 | 4 |
1 | 107.99 | 1100101.100100 | 152.01 |
2 | 357.94 | 1000111.011111 | 204.31 |
3 | 273.66 | 1111001.001110 | 110.44 |
4 | 845.76 | 1111010.100101 | 243.25 |
5 | 214.38 | 1110010.010101 | 743.56 |
6 | 584.16 | 1010101.100111 | 676.43 |
7 | 343.37 | 1101100.010011 | 114.53 |
8 | 128.69 | 1110101.000111 | 631.04 |
9 | 513.76 | 1010111.111001 | 204.33 |
10 | 778.47 | 1111001.010111 | 301.75 |
Выполнить:
1) перевести число из 10-ой системы счисления в двоичную, восьмеричную и шестнадцатеричную;
2) перевести число из 2-ой системы счисления в десятичную и восьмеричную;
3) перевести число из восьмеричной системы счисления в десятичную и двоичную системы;
4) выполнить сложение чисел, находящихся в 2 и 4 графах таблицы 2, пользуясь двоичной арифметикой;
5) выполнить вычитание двоичных чисел, находящихся в тех же графах таблицы 2.
Дата: 2019-07-30, просмотров: 217.