
- •Случайные явления
- •Природа случайных явлений.
- •Массовые случайные явления.
- •Статистический подход к описанию случайных явлений
- •Опыт, событие, случайная величина.
- •Частота события.
- •Свойства частот.
- •Вероятность события.
- •Выборочное среднее.
- •Выборочные дисперсия и среднее квадратическое отклонение.
- •Энтропия как мера неопределенности
- •Свойства энтропии
- •Понятие условной энтропии
- •Связь между энтропией и информацией
- •Объективность информации.
- •Понятие и основные задачи теории кодирования
- •Математическая постановка задачи кодирования
- •Равномерное алфавитное двоичное кодирование.
- •Байтовый код
- •Представление символьной информации в компьютере.
- •Кодирование с неравной длительностью элементарных сигналов.
- •Код Морзе
- •Блочное двоичное кодирование
- •Представление и обработка чисел в компьютере
- •Виды систем счисления
- •Перевод целых чисел из одной системы счисления в другую
- •Преобразование Zp z1 Zq
- •Преобразование Zp z10 Zq
- •Алгоритмы перевода z10 Zq
- •Алгоритмы перевода Zp z10
- •Перевод чисел между системами счисления 2 – 8 – 16
- •Кодирование чисел в компьютере и действия над ними
- •Кодирование и обработка в компьютере целых чисел без знака
- •Сложение
- •Умножение
- •Кодирование и обработка в компьютере целых чисел со знаком
Кодирование чисел в компьютере и действия над ними
Способы кодирования и допустимые над ними действия различны для следующих числовых множеств:
целые положительные числа (целые числа без знака);
целые числа со знаком;
вещественные нормализованные числа.
Кодирование и обработка в компьютере целых чисел без знака
Для записи числа в устройствах компьютера выделяется фиксированное количество двоичных разрядов.
Память компьютера имеет байтовую структуру, однако, размер одной адресуемой ячейки обычно составляет несколько байт.
Например, ячейка памяти объединяет 2 байта (16 двоичных разрядов) - такая комбинация связанных соседних ячеек, обрабатываемая совместно, называется машинным словом.
Для представления числа в регистре арифметико-логического устройства процессора, где формируется результат операции, имеется еще один дополнительный одноразрядный регистр, который называется регистром переноса и который можно рассматривать в качестве продолжения (т.е. 17-го бита) регистра результата.
Назначение этого бита выяснится чуть позже.
Конечный размер разрядной сетки порождает понятие "наибольшее целое число", которого в обычном (немашинном) представлении чисел просто не существует.
Если количество разрядов k и основание системы счисления p=2, то (Z2)max = 2k - 1.
В частности, при k=16 (Z2)max = 216 - 1 = 111 1111 1111 11112 =6553510.
Таким образом, целого числа, например 65636 и более в компьютере просто не может существовать и, следовательно, появление в ходе вычислений чисел, превышающих (Z2)max, должно интерпретироваться как ошибка.
Минимальным целым числом в беззнаковом представлении является (Z2)min = 000 0000 0000 00002 = 010.
В языке программирования PASCAL целые числа без знака, для записи которых отводится 2 байта, определены как тип Word.
Тип числа устанавливает способ кодирования этого числа, то есть количество отводимых для записи ячеек памяти (т.е. разрядность числа), а также перечень допустимых операций при обработке.
Выход за границу 65535 возможен только путем увеличения количества разрядов для записи числа, но это порождает новый тип со своим Zmax; например, тип Longint ("целое число со знаком") с максимальным значением 214748364710, числа которого занимают 4 байта.
С беззнаковыми числами выполняются арифметические операции, не меняющие типа числа; к которым относятся сложение и умножение.
Сложение
Сложение производится согласно таблице сложения, которая для двоичных чисел имеет вид:
В последнем случае в том разряде, где находились слагаемые, оказывается 0, а 1 переносится в старший разряд и называется битом переноса..
Пример 1. Найти сумму 159410 + 1756310 при беззнаковой двоичной кодировке и 16-битном машинном слове.
После перевода слагаемых в двоичную систему счисления и выполнения сложения получим (для удобства восприятия 16-ти разрядное число разобьем на группы по четыре разряда):
1 11 --Переносы
0010 0110 1001 0100
0011 0000 0011 1001
0 0101 0110 1100 1101
Рег. переполнения
Пример 2. Найти сумму 6553410 + 310
1111 1111 1111 1110 ---Переносы
0000 0000 0000 0011
1 0000 0000 0000 0001
Рег. переполнения
В последнем примере в результате сложения получилось число, превышающее максимально возможное, то есть результат ошибочен, о чем свидетельствует появление 1 в регистре переполнения.
Возникновение такой ситуации в ходе выполнения программы, написанной на языке, где предусмотрено строгое описание типа переменных, приводит к прекращению работы и выводу сообщения об ошибке.
В программах, предназначенных для обработки числовой информации (например, Excel, MathCAD или Calc), при переполнении разрядной сетки производится автоматическое преобразование целого числа в вещественный тип.
Таким образом, регистр переполнения в данном случае служит индикатором корректности процесса вычислений.