- •3.2.2. Преобразование дробной части десятичного числа
- •0.616 . . . Процесс бесконечен!
- •3.3. Двоично-восьмеричные и двоично-шестнадцатеричные преобразования
- •4. Двоичная арифметика
- •4.1. Сложение
- •111 1 ← Переносы
- •4.2. Вычитание
- •4.3. Умножение
- •4.4. Деление
- •12 Остаток
- •5. Двоичные коды
- •5.1. Прямой код
- •5.2. Обратный код
- •5.3. Дополнительный код
- •6. Сложение и вычитание чисел со знаками
- •6.1. Сложение чисел в дополнительном коде
- •6.2. Сложение чисел в обратном коде
- •1 Круговой перенос
- •7. Двоично-десятичная система представления чисел
- •14 Разряд содержит знак порядка:
- •8.4. Эвм с 32-х разрядными словами
5.2. Обратный код
содержание знакового разряда:
0 – положительное число
1 – отрицательное число
двоичное представление отрицательного числа:
(2n-1 – 1) - |X10|
диапазон чисел в обратном коде:
- (2n-1 – 1) X10 + (2n-1 – 1),
где n – количество разрядов двоичного числа
примеры записи десятичных чисел в 4-х разрядных двоичных кодах:
дес. число прямой обратный дополнительный
+7 0'111 0'111 0'111
+5 0'101 0'101 0'101
+1 0'001 0'001 0'001
+0 0'000 0'000 0'000
- 0 1'000 1'111 0'000
- 1 1'001 1'110 1'111
- 5 1'101 1'010 1'011
- 7 1'111 1'000 1'001
5.3. Дополнительный код
содержание знакового разряда:
0 – положительное число
1 – отрицательное число
двоичное представление отрицательного числа:
(2n-1) - |X10|
диапазон чисел в дополнительном коде:
- (2n-1) X10 + (2n-1 – 1),
где n – количество разрядов двоичного числа
6. Сложение и вычитание чисел со знаками
6.1. Сложение чисел в дополнительном коде
примеры сложения 5-и разрядных чисел:
+ 610 0'01102 - 310 1'11012
- 1310 1'00112 - 1110 1'01012
- 710 1'10012 -1410 11'00102
перенос игнорируется
пример вычитания 5-и разрядных чисел:
у меньшаемое +1210 0'11002 0'11002
в ычитаемое + 710 0'01112 в доп. код 1'10012
р азность + 510 10'01012
перенос игнорируется
6.2. Сложение чисел в обратном коде
примеры сложения 5-и разрядных чисел:
+ 1410 0'11102 + 910 0'10012
- 310 1'1100 2 -1410 1'00012
10'1010 2 - 510 1'10102
1 Круговой перенос
+ 1110 0'10112
пример вычитания 5-и разрядных чисел:
у меньшаемое - 610 1'10012 1'10012
в ычитаемое - 1310 1'00102 обращение 0'11012
10'01102
круговой перенос 1
разность + 710 0'01112
7. Двоично-десятичная система представления чисел
дес. цифра код 8-4-2-1 код 4-3-2-1 код с избытком 3 код 2 из 5
( 7 - 4 - 2 -1 )
0 0000 0000 0011 1100'0
1 0001 0001 0100 0001'1
2 0010 0010 0101 0010'1
3 0011 0100 0110 0011'0
4 0100 1000 0111 0100'1
5 0101 1001 1000 0101'0
6 0110 1010 1001 0110'0
7 0111 1100 1010 1000'1
8 1000 1101 1011 1001'0
9 1001 1110 1100 1010'0
7.1. Взвешенные коды
значение десятичной цифры равно:
D = Wi∙Xi
кодовая запись числа имеет вид:
X4X2X3X1
7.2. Самодополняющиеся коды
Дополнение: d' = (b - 1) - d
пример: если d = 610 , то d' = (10-1) - 610 = 310
7.3. Двоично-десятичное сложение в коде 8-4-2-1
пример 1:
2 710 0010 01112
3 610 0011 01102
6 310 0101 11012
5 13 недопустимая комбинация
0101 11012
610 01102 корректирующее слагаемое
6 310 0110 00112
1 перенос
пример 2:
1 перенос
2 810 0010 10002
5 910 0101 10012
8 710 1000 00012
8 1 допустимая комбинация,
но результат неверный
1000 00012
610 01102 корректирующее слагаемое
8 710 1000 01112
7.4. Двоично-десятичное вычитание в коде 8-4-2-1
пример:
* * заём
6 110 0110 00012
3 810 0011 10002
2 310 0010 10012
2 9 допустимая комбинация,
но результат неверный
0010 10012
610 01102 корректирующее вычитаемое
2 310 0010 00112
8. Числа с плавающей точкой
8.1. Нормализованная форма представления чисел
d = a ∙ b p ,
где a – мантисса числа, 0.1 a < 1.0
пример:
0.0000023 0.23 ∙ 10-5
нормализованная форма
8.2. Арифметика чисел с плавающей точкой
(a1 ∙ bn) ∙ (a2 ∙ bm) = a1∙a2 ∙ bn+m
(a1 ∙ bn) / (a2 ∙ bm) = a1/a2 ∙ bn- m
(a1 ∙ bn) + (a2 ∙ bn) = (a1 + a2) ∙ bn
(a1 ∙ bn) - (a2 ∙ bn) = (a1 - a2) ∙ bn
пример операции сложения двух чисел 3∙101 и 5∙108:
0.5000 e9
0 .3000 e2 0.0300 e3 … 0.0000 e6 …
потеря слагаемого
8.3. ЭВМ с 16-и разрядными словами
первое слово:
знак мантиссы - 1 бит старшая часть мантиссы -
| | порядок - 8 бит | - 7 бит |
-
15
14
7
6
0
знак мантиссы:
0 – положительное число
1 – отрицательное число
второе слово:
| младшая часть мантиссы – 16 бит |
-
15
0
порядок числа может изменяться в диапазоне
от - 12810 (-2008) до + 12710 (+1778),
и записывается в память увеличенным на + 12810 (2008)
т.е. смещённым на (2n-1), где n – число разрядов порядка
пример записей со смещением порядка:
| 14| | 7 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
- 00110 - 0018 + 2008 = 1778
+00110 + 0018 + 2008 = 2018
+12710 + 1778 + 2008 = 3778