
Реферат
По дисциплине: «Прикладная Математика»
Тема: «Математические операции с двоичными числами»
Студента I курса группы АТМ 141-Ф
Специальности 220415
Дубровца Максима Игоревича
1)Сложение (вычитание). Операция сложения (вычитания) производится в следующей последовательности.
1. Сравниваются порядки (характеристики) исходных чисел путем их вычитания р=р1-р2. При выполнении этой операции определяется, одинаковый ли порядок имеют исходные слагаемые.
2. Если разность порядков равна нулю, то это значит, что одноименные разряды мантисс имеют одинаковые веса (двоичный порядок). В противном случае должно проводиться выравнивание порядков.
3. Для выравнивания порядков число с меньшим порядком сдвигается вправо на разницу порядков Ар. Младшие выталкиваемые разряды при этом теряются.
4. После выравнивания порядков мантиссы чисел можно складывать (вычитать) в зависимости от требуемой операции. Операция вычитания заменяется операцией сложения в соответствии с данными табл. 2.3. Действия над слагаемыми производятся в ОК или ДК по общим правилам.
5. Порядок результата берется равным большему порядку.
6. Если мантисса результата не нормализована, то осуществляются нормализация и коррекция значений порядка.
Пример 2.13. Сложить два числа А10=+1.375; B10=-0.625.
А2=+1.011=0: 1011*101; B2=-0.101=-0:101*100.
В нормализованном виде эти числа будут иметь вид:
1. Вычитаем порядки Δp=p1-p2=1-0=1. В машине эта операция требует операции сложения с преобразованием порядка чисел в дополнительный код:
Определяем, что Δр≠ 0.
2. Порядок первого числа больше порядка второго числа на единицу. Требуется выравнивание порядков.
3. Для выравнивания порядков необходимо второе число сдвинуть вправо на один разряд.
[B2]исх=0: 0 1: 101
после сдвига
[B2]п=0: 11:0101
[mB]дк= 1: 1011
4. Складываем мантиссы.
Мантисса числа С - положительная.
5. Порядок числа С равен порядку числа с большим порядком, т.е. р = +1.
[С2]п=0: 1 0: 0110.
Видно, что мантисса результата не нормализована, так как старшая цифра мантиссы равна нулю.
6. Нормализуем результат путем сдвига мантиссы на один разряд влево и соответственно вычитаем из значения порядка единицу:
2)Выполнение арифметических операций с целыми числами, представленными машинными кодами. Для хранения чисел и выполнения различных операций над ними их представляют различными кодами: прямым, обратным и дополнительным. Основные отличия кодов чисел от самих чисел заключаются в следующем: разряды числа в коде жестко связаны с определенной разрядной сеткой; для записи кода знака в разрядной сетке отводится постоянно строго определенный разряд.
Код числа в форме с фиксированной точкой, состоящий из кода знака и двоичного кода его модуля, называется прямым кодом двоичного числа. Для его записи в разрядную сетку необходимо выполнить следующие операции:
записать двоичный код целого числа;
недостающие цифры старших разрядов двоичного кода заменить нулями с тем, чтобы все разряды разрядной сетки были заполнены;
в старший разряд (8 – й или 15 – й) записать код знака: 0 – для положительного числа и 1 – для отрицательного числа.
Обратный и дополнительный коды применяются для кодирования только отрицательных чисел.
^ Правила образования обратного и дополнительного двоичных машинных кодов.
1. Положительное число в прямом, обратном и дополнительном кодах выглядят одинаково.
2. Прямой код отрицательных и положительных чисел имеет различное значение только в знаковом разряде, модуль числа не изменяется.
3. Обратный код двоичного отрицательного числа получается из прямого кода путем замены единиц на нули и нулей на единицы, только код знака оставить без изменения.
Пример. .
Х2 = +1101101 [Х2]пр = 0.1101101 [Х2]обр = 0.0010010
Х2 = -0101101 [Х2]пр = 1.0101101 [Х2]обр = 1.1010010
Здесь точкой отделяется знак числа (его код) от двоичного кода самого числа. Для простоты изложения рассматривается восьмиразрядная сетка.
4. Дополнительный код отрицательного числа получается формированием обратного кода отрицательного числа и прибавлением единицы к младшему разряду этого кода (перенос в знаковый разряд при этом теряется).
Пример:
3)Арифметические операции во всех позиционных системах счисления выполняются
по одним и тем же хорошо известным правилам.
1. Сложение.
Рассмотрим сложение чисел в двоичной системе счисления. В его основе лежит
таблица сложения одноразрядных двоичных чисел:
0+0= 0
0+1= 1
1+0= 1
1+1=10
Единица переноса.
Важно обратить внимание на то, что при сложении двух единиц происходит
переполнение разряда и производится перенос в старший разряд единицы. Переполнение
разряда наступает тогда, когда величина числа в нем становится равной или большей
основания.
Сложение многоразрядных двоичных чисел происходит в соответствии с
вышеприведенной таблицей сложения с учетом возможных переносов из младших
разрядов в старшие.
В качестве примера сложим в столбик двоичные числа 1102 и 112 :
+ 1102
112
______
10012
Проверим правильность вычислений сложением в десятичной системе счисления.
Переведем двоичные числа в десятичную систему счисления и затем их сложим:
1102=1*22 + 1*21+ 0*20 = 610;
112 = 1*21 + 1*20 = 310;
610 + 310 = 910.
Теперь переведем результат двоичного сложения в десятичное число:
10012 = 1*23 +0*22 + 0*21 + 1*20 = 910
Например, сложение двух чисел 23,75 и 25,5 дает результат:
10111,11
+ 11001,10
___________
110001,01
Сложение трех чисел 365, 346 и 383
101101101
+101011010
101111111
____________
10001000110
.2. Вычитание.
В основе лежит таблица вычитания одноразрядных двоичных чисел. При вычитании
из меньшего числа (0) большего (1) производится заем из старшего разряда. При
вычитании необходимо помнить, что занятая в ближайшем старшем разряде единица дает
две единицы младшего разряда. Если в соседних старших разрядах стоят нули, то
приходится занимать единицу через несколько разрядов. При этом единица, занятая в
ближайшем значащем старшем разряде, дает две единицы младшего разряда и единицы во
всех нулевых разрядах, стоящих между младшим и тем старшим разрядом, у которого
бралась единица.
В таблице заем обозначен 1 с чертой:
0-0 =_0
0-1 =11
1-0 = 1
1-1 = 0
Вычитание многоразрядных двоичных чисел происходит в соответствии с
вышеприведенной таблицей вычитания с учетом возможных заемов из старших разрядов.
В качестве примера произведем вычитание двоичных чисел 1102 и 112:
- 1102
112
____
112
Пример вычитания 174 из 197:
11000101
-10101110
_____________
00010111
8.3. Умножение.
В основе умножения лежит таблица умножения одноразрядных двоичных чисел:
0*0 = 0
0*1 = 0
1*0 = 0
1*1 = 1
Умножение многоразрядных двоичных чисел происходит в соответствии с
вышеприведенной таблицей умножения по обычной схеме, применяемой в десятичной
системе счисления с последовательным умножением множимого на цифры множителя. В
качестве примера произведем умножение двоичных чисел:
x 1102
112
110
110
100102
Пример умножения 23,25 на 2,75:
10111,01
х 10,11
________
1011101
1011101
1011101
__________
111111,1111
8.4. Деление.
Операция деления выполняется по алгоритму, подобному алгоритму выполнения
операции деления в десятичной системе счисления. В качестве примера произведем
деление двоичного числа 1102 и 112:
-1102 112
11 102
0
Пример деления 430 на 10:
110101110 1010
-1010 101011
110<1010
1101
-1010
111<1010
1111
-1010
1010
-1010
0
Пример: разделить 9 на 4:
1001 100
-100 10,01
01<100
10<100
100
-100
0
Таким образом, при делении двух чисел, если очередное делимое больше делителя, в
частное записывается единица и к остатку от вычитания делителя из делимого сносится
очередная цифра делимого. Если же делимое меньше делителя, то в частное записывается
нуль и сносится очередной разряд делимого. Если сносится первая цифра дробной части делимого, то в частное заносится запятая.
4)Каждый разряд (цифра) двоичного числа представляется в компьютерах физическим элементом, обладающим двумя устойчивыми состояниями, одному из которых приписывается значение 0, а другому 1. Совокупность определенного количества этих элементов служит для представления многоразрядных двоичных чисел и составляет разрядную сетку или формат представления числовых данных.
В компьютерах, как и в математике, используется как естественная, так и нормальная формы записи чисел. Каждая из форм имеет определенные форматы для каждого типа компьютеров, составленные из целого количества байт. Длину формата данных измеряют в машинных словах или в количестве двоичных разрядов (бит). Так, для ПК слово - 2 байта, двойное слово - 4 байта.
Машинное полуслово для ПК
старший разряд 6 5 4 3 2 1 младший разряд
Естественная форма.
Естественную форму обычно называют представлением чисел с фиксированной запятой или точкой, положение которой строго устанавливается для правильных дробей - перед старшим разрядом, для смешанных дробей - в определенном месте, отделяющим целую и дробные части числа, для целых чисел - после младшего разряда.
В современных компьютерах естественная форма используется в основном для представления целых чисел.
Во всех форматах знак числа занимает место перед старшим разрядом и кодируется.
Достоинством естественной формы является простота и наглядность представления чисел, простота реализации алгоритмов операций, а следовательно, простота устройств и высокая степень выполнения операций.
Недостаток - ограниченный диапазон представления величин. Если результаты вычислений выходят за допустимые пределы, происходит переполнение разрядной сетки, что искажает результат. В машинах при этом вырабатывается запрос на прерывание или происходит автоматический переход к представлению данных в нормальной форме.
знак 214 213 212 211 210 29 28 27 26 25 24 23 22 21 20
0 - знак "плюс"
1 - знак "минус"
Знак от числа отделяется воображаемой точкой.
Оценим диапазон представления чисел в коротком формате - 2 байта.
|A|min = 1
|A|max = 215-1 = 32767
Нормальная форма.
Любое число в нормальной форме представляется в виде:
A = mAq PA
mA - мантисса числа A
q - основание системы счисления
PA - порядок
Мантисса числа должна удовлетворять условию: 1/q <= |m|<=1.
55,25 - естественная форма