Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
EVM.doc
Скачиваний:
1
Добавлен:
29.12.2019
Размер:
614.91 Кб
Скачать
  1. Системы счисления. Основание системы. Разряд чисел.

Система счисле́ния — символический метод записи чисел, представление чисел с помощью письменных знаков.

Система счисления:

  • даёт представления множества чисел (целых и/или вещественных);

  • даёт каждому числу уникальное представление (или, по крайней мере, стандартное представление);

  • отражает алгебраическую и арифметическую структуру чисел.

Системы счисления подразделяются на позиционные, непозиционные и смешанные.

В позиционных системах счисления один и тот же числовой знак (цифра) в записи числа имеет различные значения в зависимости от того места (разряда), где он расположен. Изобретение позиционной нумерации, основанной на поместном значении цифр, приписывается шумерам и вавилонянам; развита была такая нумерация индусами и имела неоценимые последствия в истории человеческой цивилизации. К числу таких систем относится современная десятичная система счисления, возникновение которой связано со счётом на пальцах. В средневековой Европе она появилась через итальянских купцов, в свою очередь заимствовавших её у мусульман.

Под позиционной системой счисления обычно понимается b-ричная система счисления, которая определяется целым числом , называемым основанием системы счисления. Целое число x в b-ричной системе счисления представляется в виде конечной линейной комбинации степеней числа b:

, где  — это целые числа, называемые цифрами, удовлетворяющие неравенству .

В непозиционных системах счисления величина, которую обозначает цифра, не зависит от положения в числе. При этом система может накладывать ограничения на положение цифр, например, чтобы они были расположены в порядке убывания.

Основанием системы счисления называется количество различных символов (цифр), используемых в каждом из разрядов числа для его изображения в данной системе счисления.

Системой счисления называется совокупность приемов обозначения чисел - язык, алфавитом которого являются символы (цифры), а синтаксисом - правило, позволяющее сформулировать запись чисел однозначно. Запись числа в некоторой системе счисления называется кодом числа. Общий вид числа:

A = anan-1...a2a1a0

Отдельную позицию в изображении числа принято называть разрядом, а номер позиции - номером разряда. Число разрядов в записи числа называется разрядностью и совпадает с его длиной.

  1. Анализ позиционных систем счисления

Позиционная система счисления определяется целым числом b > 1, называемым основанием системы счисления. Система счисления с основанием b также называется b-ричной (в частности, двоичной, троичной, десятичной и т. п.).

Целое число x в b-ричной системе счисления представляется в виде конечной линейной комбинации степеней числа b:[1]

, где  — это целые числа, называемые цифрами, удовлетворяющие неравенству

Каждая степень в такой записи называется разрядом (позицией), старшинство разрядов и соответствующих им цифр определяется значением показателя степени . Обычно для ненулевого числа требуют, чтобы старшая цифра в b-ричном представлении была также ненулевой.

Если не возникает разночтений (например, когда все цифры представляются в виде уникальных письменных знаков), число записывают в виде последовательности его b-ричных цифр, перечисляемых по убыванию старшинства разрядов слева направо:[1]

Построение такой записи числа называют позиционным кодированием числа, а саму запись — позиционным кодом числа.

Например, число сто три представляется в десятичной системе счисления в виде:

Во избежание путаницы при одновременной работе с несколькими системами счисления основание указывается в качестве нижнего индекса:

С помощью n позиций в b-ричной системе счисления можно записать целые числа от 0 до , то есть, всего различных чисел.

3 Перевод чисел в разных системах счисления Перевод в десятичную систему счисления

Если число в b-ричной системе счисления равно

то для перевода в десятичную систему вычисляем такую сумму:

или, в более наглядном виде:

либо, наконец, в виде схемы Горнера:

Например:

1011002 =

= 1 · 25 + 0 · 24 + 1 · 23 + 1 · 22 + 0 · 21 + 0 · 20 =

= 1 · 32 + 0 · 16 + 1 · 8 + 1 · 4 + 0 · 2 + 0 · 1 =

= 32 + 8 + 4 + 0 = 4410

Перевод из десятичной системы счисления

Целая часть

  1. Последовательно делить целую часть десятичного числа на основание, пока десятичное число не станет равно нулю.

  2. Полученные при делении остатки являются цифрами нужного числа. Число в новой системе записывают, начиная с последнего остатка.

Дробная часть

  1. Дробную часть десятичного числа умножаем на основание системы, в которую требуется перевести. Отделяем целую часть. Продолжаем умножать дробную часть на основание новой системы, пока она не станет равной 0.

  2. Число в новой системе составляют целые части результатов умножения в порядке, соответствующем их получению.

Перевод из двоичной в восьмеричную и шестнадцатеричную системы

Для этого типа операций существует упрощённый алгоритм.

Для восьмеричной — разбиваем переводимое число на количество цифр, равное степени 2 (2 возводится в ту степень, которая требуется, чтобы получить основание системы, в которую требуется перевести (2³=8), в данном случае 3, то есть триад). Преобразуем триады по таблице триад:

000 0 100 4

001 1 101 5

010 2 110 6

011 3 111 7

Для шестнадцатеричной — разбиваем переводимое число на количество цифр, равное степени 2 (2 возводится в ту степень, которая требуется, чтобы получить основание системы, в которую требуется перевести (24=16), в данном случае 4, то есть тетрад).

Перевод из восьмеричной и шестнадцатеричной систем в двоичную

Для этого типа операций существует упрощённый алгоритм-перевёртыш.

Для восьмеричной — преобразуем по таблице в триплеты

0 000 4 100

1 001 5 101

2 010 6 110

3 011 7 111

Для шестнадцатеричной — преобразуем по таблице в квартеты

0 0000 4 0100 8 1000 C 1100

1 0001 5 0101 9 1001 D 1101

2 0010 6 0110 A 1010 E 1110

3 0011 7 0111 B 1011 F 1111

Перевод из двоичной системы в 8- и 16-ричную

Перевод дробной части из двоичной системы счисления в системы счисления с основаниями 8 и 16 осуществляется точно также, как и для целых частей числа, за тем лишь исключением, что разбивка на октавы и тетрады идёт вправо от десятичной запятой, недостающие разряды дополняются нулями справа. Например, рассмотренное выше число 1100,0112 будет выглядеть как 14,38 или C,616.

Перевод из произвольной системы счисления в десятичную

Рассмотрим пример перевода двоичного числа 1100,0112 в десятичное. Целая часть этого числа равна 12 (см. выше), а вот перевод дробной части рассмотрим подробнее:

Итак, число 1100,0112 = 12,37510.

Точно также осуществляется перевод из любой системы счисления, только вместо «2» ставится основание системы.

Для удобства перевода, целую и дробную части числа переводят отдельно, а результат потом конкатенируют.

Перевод из десятичной системы в произвольную

Для перевода дробной части числа в другие системы счисления нужно обратить целую часть в нуль и начать умножение получившегося числа на основание той системы, в которую нужно перевести. Если в результате умножения будут снова появляться целые части, их нужно повторно обращать в нуль, предварительно запомнив (записав) значение получившейся целой части. Операция заканчивается, когда дробная часть полностью обратится в нуль.

4 Двоичные числа с плавающей запятой.

Часто приходится обрабатывать очень большие числа (например, расстояние между звёздами) или наоборот очень маленькие числа (например, размеры атомов или электронов). При таких вычислениях пришлось бы использовать числа с очень большой разрядностью. В то же время нам не нужно знать расстояние между звёздами с точностью до миллиметра. Для вычислений с такими величинами числа с фиксированной запятой неэффективны.

В десятичной арифметике для записи таких чисел используется алгебраическая форма. При этом число записывается в виде мантиссы, умноженной на 10 в степени, отображающей порядок числа, Например:

0,2*105; 0,16*10-38

Для записи двоичных чисел тоже используется такая форма записи. Эта форма записи называется запись числа с плавающей точкой. Напомним, что мантисса не может быть больше единицы и после запятой в мантиссе не может записываться ноль.

А теперь рассмотрим промышленные стандарты, используемые для представления чисел в компьютерах. Существует стандарт IEEE 754 для представления чисел с одинарной точностью (float) и с двойной точностью (double). Для записи числа в формате с плавающей запятой одинарной точности требуется тридцатидвухбитовое слово. Для записи чисел с двойной точностью требуется шестидесятичетырёхбитовое слово. Чаще всего числа хранятся в нескольких соседних ячейках памяти процессора. Форматы числа в формате с плавающей запятой одинарной точности и числа в формате с плавающей запятой удвоенной точности приведены на рисунке

На рисунке буквой S обозначен знак числа, 0 - это положительное число, 1 - отрицательное число. e обозначает смещённый порядок числа. Смещение требуется, чтобы не вводить в число еще один знак. Смещённый порядок всегда положительное число. Для одинарной точности для порядка выделено восемь бит. Для смещённого порядка двойной точности отводится 11 бит. Для одинарной точности смещение принято 127, а для двойной точности — 1023. В десятичной мантиссе после запятой могут присутствовать цифры 1:9, а в двоичной — только 1. Поэтому для хранения единицы после двоичной запятой не выделяется отдельный бит в числе с плавающей запятой. Единица подразумевается, как и двоичная запятая. Кроме того, в формате чисел с плавающей запятой принято, что мантисса всегда больше 1. То есть диапазон значений мантиссы лежит в диапазоне от 1 до 2.

Число с плавающей запятой состоит из:

  • Мантиссы (выражающей значение числа без учёта порядка)

  • Знака мантиссы (указывающего на отрицательность или положительность числа)

  • Порядка (выражающего степень основания числа, на которое умножается мантисса)

  • Знака порядка

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]