· 128 – 255 дополнительная таблица: национальные алфавиты, математические символы, псевдографика.
· Настройка замена таблиц, унификация.
· 2 х байт 216 = 65 536 комбинаций, Unicod, алфавиты всех языков, математические символы, декоративные символы, …; 4 х байт 232 - ?
4.6.3. Использование избыточности кодирования.
· n – символов, ; - нет избыточности; - избыточность.
· Обнаружение и исправление ошибок, контроль четности.
· Пример: алфавит – {a, b, c, d}, код, исправляющий одну ошибку:
a 11000, b 00110, c 10011, d 01101.
Таблица декодирования.
11000 |
00110 |
10011 |
01101 |
11001 |
00111 |
10010 |
01100 |
11010 |
00100 |
10001 |
01111 |
11100 |
00010 |
10111 |
01001 |
10000 |
01110 |
11011 |
00101 |
01000 |
10110 |
00011 |
11101 |
11110 |
00000 |
01011 |
10101 |
01010 |
10100 |
11111 |
00001 |
Расстояние – число несовпадающих разрядов, при двух несовпадениях возможна ошибка декодирования.
Принципы организации вычислений.
4.7. Коды для выполнения арифметических операций.
· 4 арифметических действия 4 цифровых автомата; аппаратурных затрат; сведение к сложению и использование только сумматоров; применение специальных кодов.
4.7.1. Кодирование знака.
«+» - 0; «-» - 1; х=-0.01....10 Þ [x]=1.01....10 - для фиксированной точки;
х=-0.1010....01 × 10-110 Þ [x]=01.1010....01 01 0....110 - для плавающей точки.
4.7.2. Прямой код числа: прямой код положительного числа совпадает с его записью, прямой код отрицательного числа отличается от обычной записи числа знаковым разрядом, в который заносится единица.
x = +0.10101 Þ [x]пр = 0.10101; y = - 0.01011 Þ [y]пр = 1.01011.
4.7.3. Обратный код числа: x > 0 Þ [x]обр =[x]пр , для отрицательного числа: в знаковый разряд пишется единица, а значащие разряды числа изменяются на обратные величины.
x = -0.0110 Þ [x]обр = 1.1001; y = + 0.1010 Þ [y]обр = 0.1010.
4.7.4. Дополнительный код числа: x > 0 Þ [x]пр =[x]доп , для отрицательного числа: в знаковый разряд пишется единица, а в значащих разрядах единицы меняются на нули, а нули - на единицы и к младшему разряду числа прибавляется единица (модуль числа дополняется до двух - 10(2))
x = -0.1011 Þ [x]обр = 1.0100; [x]доп = 1.0101;
[x]доп = 1.0101+0.1011=10.0000
4.7.5. Модифицированные коды: под знак числа отводится два разряда для выявления переполнения разрядной сетки.
x = -0.11001 Þ [x]мобр = 11.00110;
y = + 0.01101 Þ [х] мобр = 00.01101.
x = +0.10010 Þ [x] мдоп = 00.10010;
y = - 0.01100 Þ [y] мдоп = 11.10100
4.8. Выполнение арифметических операций с фиксированной запятой.
4.8.1. Сложение в обратном коде: значащие разряды чисел складываются как разряды целых чисел; образующаяся при этом в знаковом разряде единица переполнения прибавляется к младшему разряду суммы (циклический перенос).
Микрооперации:
1. образовать обратный код первого слагаемого;
2. образовать обратный код второго слагаемого;
3. произвести поразрядное сложение;
4. учесть единицу переполнения - циклический перенос;
5. сумму преобразовать в прямой код.
4.8.2. Сложение в дополнительном коде: значащие разряды чисел складываются поразрядно, знаковые разряды - как разряды целых чисел, а образующаяся в знаковом разряде единица переполнения теряется.
Микрооперации:
1. образовать дополнительный код первого слагаемого;
2. образовать дополнительный код второго слагаемого;
3. произвести поразрядное сложение;
4. вычесть единицу из младшего разряда суммы (при отрицательном результате);
5. сумму преобразовать в прямой код.
Не всегда используется весь набор микроопераций, перечисленные действия не вполне отражают специфику работы электронных схем.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.