Системы счисления занимают важное место в вопросах организации обработки информации с помощью ЭВМ, наряду с формами представления данных и специальным кодированием чисел.
Совокупность приемов наименования и записи чисел называется счислением. Под системой счисления понимается способ представления любого числа с помощью ограниченного алфавита символов, называемых цифрами. Счисление представляет собой частный случай кодирования, где слово, записанное с использованием определенного алфавита и по определенным правилам, называется кодом. Применительно к счислению это код числа.
Различают позиционные и непозиционные системы счисления.
В непозиционных системах счисления каждое число обозначается соответствующей совокупностью символов. Характерным представителем непозиционных систем является римская система счисления со сложным способом записи чисел и громоздкими правилами выполнения арифметических операций. Например, запись MDCLXVIII означает, что записано число 1668 (М — тысяча, D — пятьсот, С — сто, L — пятьдесят, X — десять, V — пять, I — единица и т. д.).
Позиционные системы счисления обладают большими преимуществами в наглядности представления чисел и в простоте выполнения арифметических операций.
В позиционной системе счисления значение числа определяется не только набором входящих в него цифр, но и их местом (позицией) в последовательности цифр, изображающих это число, например, числа 127 и 721.
Позиционной является десятичная система счисления, используемая в повседневной жизни.
Количество символов, используемых в позиционной системе счисления, называется ее основанием. Его обозначают обычно буквой q. В десятичной системе счисления используется десять символов (цифр): 0, 1,2, 3, 4, 5, 6, 7, 8, 9, и основанием системы является число десять.
Особое место среди позиционных систем счисления занимают системы со степенными весами разрядов, в которых веса смежных позиций цифр (разрядов) отличаются по величине в постоянное количество раз, равное основанию q системы счисления.
В информатике применяют позиционные системы счисления с недесятичным основанием: двоичную, восьмеричную и шестнадцатеричную, то есть системы счисления с основанием q = 2k, где к = 1, 3, 4.
Наибольшее распространение получила двоичная система счисления. В этой системе для представления любого числа используются два символа — цифры 0 и 1. Основание системы счисления q = 2.
Двоичное представление числа требует примерно в 3,3 раза большего числа разрядов, чем его десятичное представление. Тем не менее применение двоичной системы счисления создает большие удобства для работы ЭВМ, т. к. для представления в машине разряда двоичного числа может быть использован любой запоминающий элемент, имеющий два устойчивых состояния.
В восьмеричной системе счисления алфавит состоит из восьми символов (цифр): 0, 1,..., 7. Основание системы счисления q = 8.
В шестнадцатеричной системе счисления алфавит включает в себя 16 символов (цифр и букв): 0, 1, ..., 9, А, В, С, D, E, F. Основание системы счисления q = 16.
Наряду с двоичными кодами, с которыми оперирует ЭВМ, для ввода и вывода десятичных чисел (данных) используют специальное двоично-десятичное кодирование. При двоично-десятичном кодировании каждая десятичная цифра заменяется тетрадой (четверкой) двоичных цифр, а сами тетрады записываются последовательно в соответствии с порядком следования десятичных цифр. При обратном преобразовании двоично-десятичного кода в десятичный, исходный код разбивается на тетрады вправо и влево от запятой, которые затем заменяются десятичными цифрами.
Таким образом, при двоично-десятичном кодировании фактически не производится перевод числа в новую систему счисления, а мы имеем дело с двоично-кодированной десятичной системой счисления.
Преобразование чисел.
Необходимость перевода числа из одной системы счисления в другую обусловлена тем, что пользователю удобнее иметь дело с десятичными или шестнадцатеричными кодами, а ЭВМ работают с двоичными кодами.
Формы представления данных.
В ЭВМ используются следующие формы представления данных: числа с фиксированной точкой (запятой); G числа с плавающей точкой (запятой); десятичные числа; U символьные данные.