Информатика на пять О нас
 Добавить в избранное
5byte.ru
 Теория
 8 класс
 9 класс
 10 класс
 11 класс
Задания
 8 класс
 9 класс
 10 класс
 11 класс
Книги
Тесты
ЕГЭ
Turbo Pascal 7
 Описание
 Задачи
HTML
Рефераты

Кодирование числовой информации

Представление числовой информации с помощью систем счисления

Для записи информации о количестве объектов используются числа. Числа записываются с использованием особых знаковых систем, которые называются системами счисления. Алфавит системы счисления состоит из символов, которые называются цифрами.

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

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

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

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

Примером непозиционной системы, которая сохранилась до наших дней, может служить римская система счисления, которая начала применяться более двух с половиной тысяч лет назад в Древнем Риме. В основе римской системы счисления лежат знаки I (один палец) для числа 1, V (раскрытая ладонь) для числа 5, X (две сложенные ладони) для числа 10, а для обозначения чисел 100, 500 и 1000 используются латинские буквы С, D и М.

В римской системе счисления количественное значение цифры не зависит от ее положения в числе. Например, в римском числе XXX (30) цифра X встречается трижды и в каждом случае обозначает одну и ту же величину — число 10, три раза по 10 в сумме дают 30.

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

XXVIII =10 + 10 + 5 + 1 + 1 + 1 (два десятка, пяток, три единицы).

При записи чисел в римской системе счисления применяется правило: каждый меньший знак, поставленный слева от большего, вычитается из него, в остальных случаях знаки складываются. Например, римское число IX обозначает 9 (-1 + 10), а XI обозначает 11 (10 + 1). Число 99 имеет следующее представление в римской системе счисления: XCIX = -10 + 100 - 1 + 10.

Позиционные системы счисления. Каждая позиционная система счисления имеет определенный алфавит цифр и основание. Основание системы равно количеству цифр (знаков) в ее алфавите.

В позиционных системах счисления количественное значение цифры зависит от ее позиции в числе. Позиция цифры в числе называется разрядом. Разряды числа возрастают справа налево, от младших разрядов к старшим, причем значения одинаковых цифр, стоящих в соседних разрядах числа, различаются на величину основания.

В настоящее время наиболее распространенными позиционными системами счисления являются десятичная и двоичная. Десятичная система счисления имеет алфавит цифр, который состоит из десяти всем известных, так называемых арабских цифр {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}. Алфавит двоичной системы - две цифры {0, 1} (табл. 4.1).

Таблица 4.1. Позиционные системы счисления
Система счисления Основание Алфавит цифр
Десятичная 10 0, 1,2,3,4,5,6,7,8,9
Двоичная 2 0, 1

Десятичная система счисления. В десятичной системе счисления цифра в крайней справа позиции обозначает единицы, цифра, смещенная на одну позицию влево, обозначает десятки, еще левее - сотни, затем тысячи и т. д. Рассмотрим в качестве примера десятичное число 555. Цифра 5 встречается в числе трижды, причем самая правая обозначает пять единиц, вторая справа - пять десятков и, наконец, третья - пять сотен.

Выше десятичное число 555 было записано в привычной для нас свернутой форме. Мы настолько привыкли к такой форме записи, что уже не замечаем, как в уме умножаем цифры числа на различные степени числа 10, которое является основанием десятичной системы счисления.

В развернутой форме записи числа умножение цифр числа на основание производится в явной форме. Так, в развернутой форме запись числа 555 в десятичной системе будет выглядеть следующим образом:

55510 = 5 × 102 + 5 × 101 + 5 × 100.

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

555,5510 = 5 × 102 + 5 × 101 + 5 × 100 + 5 × 10-1 + 5 × 10-2.

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

Умножение или деление десятичного числа на 10 (величину основания) приводит к перемещению запятой, отделяющей целую часть от дробной, на один разряд соответственно вправо или влево. Например:

555,5510 × 10 = 5555,510,

555,5510 : 10 = 55,55510.

Двоичная система счисления. Числа в двоичной системе в развернутой форме записываются в виде суммы ряда степеней основания 2 с коэффициентами, в качестве которых выступают цифры 0 или 1.

Например, развернутая запись двоичного числа выглядит следующим образом:

А2 = 1 × 22 + 0 × 21 + 1 × 20 + 0 × 2-1 + 1 × 2-2.

Это же число в свернутой форме:

А2 = 101,012.

Умножение или деление двоичного числа на 2 (величину основания) приводит к перемещению запятой, отделяющей целую часть от дробной, на один разряд соответственно вправо или влево. Например:

101,012 × 2 = 1010,12,

101,012 : 2 = 10,1012.

Первая позиционная система счисления была придумана еще в древнем Вавилоне, причем вавилонская нумерация была шестидесятеричной, т. е. в ней использовалось шестьдесят цифр! Интересно, что до сих пор при измерении времени мы используем основание 60 (в 1 минуте содержится 60 секунд, а в 1 часе - 60 минут).

В XIX веке довольно широкое распространение получила двенадцатеричная система счисления. До сих пор мы часто употребляем дюжину (число 12): в сутках две дюжины часов, круг содержит тридцать дюжин градусов и т. д.

В информатике широко используются восьмеричная и шестнадцатеричная системы счисления. В восьмеричной системе основание равно 8 и алфавит состоит из восьми цифр {0, 1, 2, 3, 4, 5, 6, 7}. Запишем восьмеричное число 77 в свернутой и развернутой формах и переведем его в десятичную систему счисления:

778 = 7 × 81 + 7 × 80 = 6310.

В шестнадцатеричной системе основание равно 16 и алфавит состоит из шестнадцати цифр {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, А, В, С, D, E, F}, причем первые десять цифр имеют общепринятое обозначение, а для записи остальных цифр {10, 11, 12, 13, 14, 15} используются первые шесть букв латинского алфавита. Запишем шестнадцатеричное число в свернутой и развернутой формах и переведем его в десятичную систему счисления:

ABCDEF16 = А × 165 + В × 164 + C × 163 + D × 162 + Е × 161 + F × 160 = 10 × 165 + 11 × 164 + 12 × 163 + 13 × 162 + 14 × 161 + 15 × 160 = 1125937510.

Контрольные вопросы

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

2. Каково основание десятичной системы счисления? Двоичной системы счисления?

3. Какие цифры входят в алфавит десятичной системы счисления? Двоичной системы счисления?

4. На какую величину в позиционных системах счисления различаются одинаковые цифры, стоящие в соседних разрядах числа?

5. Может ли в качестве цифры использоваться символ буквы?

Задания для самостоятельного выполнения

4.1. Задание с кратким ответом. Запишите числа 3,1410 и 10,12 в развернутой форме.

4.2. Задание с кратким ответом. Во сколько раз увеличатся числа 10,110 и 10,12 при переносе запятой на один знак вправо?

4.3. Задание с кратким ответом. При переносе запятой на два знака вправо число 11,11x увеличилось в 4 раза. Чему равно основание системы счисления x?

4.4. Задание с кратким ответом. Какое минимальное основание может иметь система счисления, если в ней записано число 11? Число 99?

4.5. Задание с кратким ответом. Запишите год, месяц и число своего рождения с помощью римских цифр.

Перевод чисел в позиционных системах счисления

Человек использует десятичную систему счисления, а компьютер - двоичную систему счисления. Поэтому часто возникает необходимость перевода чисел из десятичной системы в двоичную и наоборот.

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

Возьмем любое двоичное число, например 10,112. Запишем его в развернутой форме и произведем вычисления:

10,112 = 1 × 21 + 0 × 20 + 1 × 2-1 + 1 × 2-2 = 1 × 2 + 0 × 1 + 1 × 1/2 + 1 × 1/4 = 2,7510.

Перевод целых чисел из десятичной системы счисления в двоичную систему счисления. Алгоритм перевода целого десятичного числа в двоичное следующий:

1) последовательно выполнять деление исходного целого десятичного числа и получаемых целых частных на основание системы счисления (на 2) до тех пор, пока частное от деления не окажется равным нулю;

2) получить искомое двоичное число, для чего записать полученные остатки в обратной последовательности.

В качестве примера рассмотрим перевод десятичного числа 1910 в двоичную систему счисления, записывая результаты в таблицу (табл. 4.2).

Таблица 4.2. Перевод целого числа из десятичной системы счисления в двоичную


В результате получаем двоичное число:

А2 = 100112.

Перевод десятичных дробей в двоичную систему счисления. Алгоритм перевода десятичной дроби в двоичную следующий:

1) последовательно выполнять умножение исходной десятичной дроби и получаемых дробей на основание системы (на 2) до тех пор, пока не получим нулевую дробную часть или не будет достигнута требуемая точность вычислений;

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

В качестве примера рассмотрим перевод десятичной дроби 0,7510 в двоичную систему, записывая результаты в таблицу (табл. 4.3).

Таблица 4.3. Перевод дробного числа из десятичной системы счисления в двоичную


В результате получаем двоичную дробь:

А2 = 0,112.

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

Задания для самостоятельного выполнения

4.6. Задание с развернутым ответом. Переведите в десятичную систему двоичные числа: 1012, 1102, 1112

4.7. Задание с развернутым ответом. Переведите целое десятичное число 102 в двоичную систему счисления.

4.8. Задание с развернутым ответом. Переведите десятичную дробь 0,252 в двоичную систему счисления.

4.9. Задание с развернутым ответом. Переведите десятичное число 10,252 в двоичную систему счисления.

Арифметические операции в позиционных системах счисления

Арифметические операции во всех позиционных системах счисления выполняются по одним и тем же хорошо известным вам правилам.

Сложение. Рассмотрим сложение чисел в двоичной системе счисления. В его основе лежит таблица сложения одноразрядных двоичных чисел:

0 + 0 = 0

0 + 1 = 1,

1 + 0 = 1,

1 + 1 = 10.

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

Сложение многоразрядных двоичных чисел происходит в соответствии с вышеприведенной таблицей сложения с учетом возможных переносов из младших разрядов в старшие. В качестве примера сложим в столбик двоичные числа 1102 и 112.



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

1102 = 1 × 22 + 1 × 21 + 0 × 20 = 610

112 = 1 × 21 + 1 × 20 = 310

610 + 310 = 910

Теперь переведем результат двоичного сложения в десятичное число.

10012 = 1 × 23 + 0 × 22 + 0 × 21 + 1 × 20 = 910

Сравнение результатов показывает, что сложение выполнено правильно.

Вычитание. Рассмотрим вычитание двоичных чисел. В его основе лежит таблица вычитания одноразрядных двоичных чисел. При вычитании из меньшего числа (0) большего (1) производится заем из старшего разряда. В таблице заем обозначен 1 с чертой.



Вычитание многоразрядных двоичных чисел происходит в соответствии с вышеприведенной таблицей вычитания с учетом возможных заемов из старших разрядов. В качестве примера произведем вычитание двоичных чисел 1102 и 112.



Умножение. В основе умножения лежит таблица умножения одноразрядных двоичных чисел:



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



Деление. Операция деления выполняется по алгоритму, подобному алгоритму выполнения операции деления в десятичной системе счисления. В качестве примера произведем деление двоичного числа 1102 на 112.



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

Задания для самостоятельного выполнения

4.10. Задание с развернутым ответом. Выполните сложение, вычитание, умножение и деление двоичных чисел 10102 и 102.

Двоичное кодирование чисел в компьютере

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

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

Для хранения целых неотрицательных чисел отводится одна ячейка памяти (8 битов). Например, число А2 = 111100002 будет храниться в ячейке памяти следующим образом:



Определим диапазон чисел, которые могут храниться в оперативной памяти в формате целого неотрицательного числа. Минимальное число записывается в восьми разрядах памяти восемью нулями и равно 0. Максимальное число записывается восемью единицами и равно:

А = 1 × 27 +1 × 26 +1 × 25 + 1 × 24 + 1 × 23 + 1 × 22 + 1 × 21 + 1 × 20 = 1 × 28 - 1 = 25510.

Таким образом, диапазон изменения целых неотрицательных чисел - от 0 до 255.

Для хранения целых чисел со знаком отводится две ячейки памяти (16 битов), причем старший (левый) разряд отводится под знак числа (если число положительное, то в знаковый разряд записывается 0, если число отрицательное, записывается 1).

Например, отрицательное число -200210 = 111110100102 будет представлено в 16-разрядном представлении следующим образом:



Максимальное положительное число (с учетом выделения одного разряда на знак) для данного формата представления равно:

А = 215 - 1 = 32 76710.

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

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

Задания для самостоятельного выполнения

4.11. Задание с развернутым ответом. В каком виде будет храниться в компьютере десятичное число 1010 в формате целого неотрицательного числа и целого числа со знаком?





 У Вас есть материал пишите нам
 
    Copyright © 2008    
  Top.Mail.Ru