Автор: Пользователь скрыл имя, 10 Февраля 2013 в 19:50, контрольная работа
Информация в ЭВМ кодируется в двоичной и двоично-десятичной системах счисления.
Система счисления — это способ наименования и изображения чисел с помощью символов, имеющих определенные количественные значения.
В зависимости от способа изображения чисел, системы счисления делятся на позиционные и непозиционные.
Информация в ЭВМ кодируется в двоичной и двоично-десятичной системах счисления.
Система счисления — это способ наименования и изображения чисел с помощью символов, имеющих определенные количественные значения.
В зависимости от способа изображения чисел, системы счисления делятся на позиционные и непозиционные.
В позиционной системе счисления количественное значение каждой цифры зависит от ее места (позиции) в числе (например, используемая нами десятичная система).
Непозиционная система счисления - система, в которой для обозначения чисел вводятся специальные знаки, количественное значение которых всегда одинаково и не зависит от их места в записи числа (римская, I= 1; V=5; X=10; L=50; C=100; D=500; M=1000). |
Количество (Р) различных цифр, используемых для изображения числа в позиционной системе счисления, называется основанием системы счисления (две цифры – «0» и «1» – основание системы счисления «два», десять цифр – основание – «десять»).
В общем случае запись любого смешанного числа в системе счисления с основанием Р будет представлять собой ряд вида:
Индексы определяют местоположение цифры в числе (разряд):
□ положительные значения индексов - для целой части числа (m разрядов –> 0… m -1);
□ отрицательные - для дробной (s разрядов).45610=4*102 + 5*101 + 6*100, 1012=1*22+0*21+1*20.
Максимальное целое число, которое мб представлено в m разрядах (m=2, Nmax=99) |
|
Минимальное значащее (≠0) число, которое можно записать в s разрядах дробной части. Например, при s=3, Nmin=0,001 |
|
Имея в целой части числа m, а в дробной - s разрядов, можно записать много разных чисел. Например, при m=2, s=3 - > 105 |
Pm+S |
Двоичная система счисления имеет основание Р = 2 и использует для представления информации всего две цифры 0 и 1. Существуют правила перевода чисел из одной системы счисления в другую, основанные в том числе и на соотношении (стр. 1).
Например, двоичное число 101110,101 равно десятичному числу 46,625, так как
101110,101(2) = 1•25 + 0•24 + 1•23 + 1•22 + 1•21 + 0•2° + 1•2-1 + 0•2-2 + 1•2-3 = 46,625(10).
Практически перевод из двоичной системы в десятичную можно легко выполнить, надписав, как показано ниже, над каждым разрядом соответствующий ему вес и сложив затем произведения значений соответствующих цифр на их веса.
Например, двоичное число 010000012 равно 6510. Действительно, 64 • 1 + 1 • 1 = 65.
Вес |
128 |
64 |
32 |
16 |
8 |
4 |
2 |
1 |
Цифра |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
1 |
Обратный перевод из десятичной системы счисления в систему счисления с другим основанием по формуле (стр.1) для человека затруднителен, т.к. все арифметические действия по формуле следует выполнять в той системе счисления, в которую число переводится. Перевод может быть выполнен проще, если предварительно преобразовать отдельно целую и дробную части выражения (стр.1) к виду:
Алгоритм перевода числа
из десятичной системы счисления
в систему счисления с
0. При переводе смешанного числа следует отдельно переводить его целую и дробную части.
Пример перевода числа 46,625 из десятичной в двоичную систему счисления.
- Переводим целую часть числа: 46 : 2 = 23 (остаток 0). 23 : 2 = 11 (остаток 1). 11: 2 = 5 (остаток 1). 5 : 2 = 2 (остаток 1). 2 : 2 = 1 (остаток 0). 1 : 2 = 0 (остаток 1).
Записываем остатки
- Переводим дробную часть числа: 0,625 • 2 = 1,250. 0,250 • 2 = 0,500. 0,500 • 2 = 1,000.
Записываем целые части
- Окончательно 46,62510 = 101110,1012.
2.1. Представление чисел с фиксированной и плавающей запятой
В вычислительных машинах применяются две формы представления двоичных чисел:
□ естественная форма или форма с фиксированной запятой
□ нормальная форма или форма с плавающей запятой (точкой).
1). В форме представления с фиксированной запятой все числа изображаются в виде последовательности цифр с постоянным для всех чисел положением запятой, отделяющей целую часть от дробной.
Например: в десятичной системе счисления имеется 5 разрядов в целой части числа (до запятой) и 5 разрядов в дробной части числа (после запятой); числа имеют вид: +00721,35500; -10301,20260.
Эта форма наиболее проста, естественна, но имеет небольшой диапазон представления чисел и поэтому чаще всего неприемлема при вычислениях. Диапазон значащих чисел N в системе счисления с основанием Р при наличии m разрядов в целой части и s разрядов в дробной части числа (без учета знака числа) будет: . Например, при Р=2, m = 10 и s = 6 диапазон: 0,015 < N < 1024.
Если в результате операции получится число, выходящее за допустимый диапазон, происходит переполнение разрядной сетки, и дальнейшие вычисления теряют смысл. В современных компьютерах естественная форма представления используется как вспомогательная и только для целых чисел.
2). В форме плавающей запятой каждое число изображается в виде двух групп цифр. Первая группа цифр называется мантиссой, вторая — порядком, причем абсолютная величина мантиссы должна быть меньше 1, а порядок — целым числом. В общем виде число в форме с плавающей запятой может быть представлено так: где М — мантисса (|М| < 1); r — порядок (целое); Р — основание системы счисления.
Например, числа запишутся так: +0,721355 • 103; 0,103012026 • 105.
Нормальная форма
Приведем пример. При P=2, m=22 и s=10 диапазон чисел простирается примерно от 10-300 до 10300. Для сравнения: количество секунд, которые прошли с момента образования планеты Земля, составляет всего 1018. Для m=10 наибольшее число ~ 9,2*1018.
Следует заметить, что все числа с плавающей запятой хранятся в машине в так называемом нормализованном виде. Нормализованным называют такое число, в старшем разряде мантиссы которого стоит ноль. У нормализованных двоичных чисел, следовательно, 0,5 <= \М\ < 1.
2.2. Алгебраическое представление двоичных чисел
Знак числа кодируется двоичной цифрой:
● код 0 означает знак + (плюс), ● код 1 означает знак — (минус).
Для алгебраического представления чисел, то есть для представления чисел с учетом их знака, в машинах используются специальные коды:
□ прямой код числа;
□ обратный код числа;
□ дополнительный код числа.
При этом два последних кода позволяют заменить неудобную для компьютера операцию вычитания на операцию сложения с отрицательным числом.
Дополнительный код обеспечивает более быстрое выполнение операций, поэтому в компьютере применяется чаще именно он.
1). Прямой код числа N обозначим [N]np.
Пусть модуль N= aaa...а;
□ если N > 0, то [N]np = 0,ааа...а;
□ если N < 0, то [N]np = 1,ааа...а;
□ если N = 0, то имеет место неоднозначность: может [0]np = 0,0... или [0]np = 1,0...
Если при сложении оба слагаемых имеют одинаковый знак, то операция сложения выполняется обычным путем. Если при сложении слагаемые имеют разные знаки, то сначала необходимо выявить число, большее по абсолютной величине, произвести из него вычитание меньшего числа, а разности присвоить знак большего числа.
Операции умножения и деления в прямом коде выполняются обычным образом, но знак результата определяется по совпадению или не совпадению знаков, участвовавших в операции чисел.
Операцию вычитания в этом коде нельзя заменить операцией сложения с отрицательным числом, поэтому возникают сложности, связанные с заемом значений из старших разрядов уменьшаемого. В связи с этим прямой код в ПК почти не применяется.
2). Обратный код числа N обозначим [N]обр.
Символ а* означает величину, обратную а, то есть если а = 1, то а* = 0, и наоборот.
□ если N > 0, то [N]обр = [N]пр = 0,аа...а,
□ если N < 0, то [N]обр = 1,а*а*...а*,
Т.е., для того чтобы получить обратный код отрицательного числа, необходимо все цифры этого числа инвертировать (в знаковом разряде поставить 1, во всех значащих разрядах нули заменить единицами, а единицы нулями).
□ если N = 0, то неоднозначность: может [0]обр = 0,00...0 или [0]обр = 1,11...1.
Например, число N = 0,1011, тогда [N]обр = 0,1011. Число N = -0,1011, [N]обр = 1,0100.
3. Дополнительный код числа N обозначим [N]доп
□ если N >= 0, то [N]доп = [N]пр = 0,аа...а,
□ если N <= 0, то [N]доп = 1,а*а*...а* + 0,00...1.
Для того чтобы получить дополнительный код отрицательного числа, необходимо все его цифры инвертировать (в знаковом разряде поставить единицу, во всех значащих разрядах нули заменить единицами, а единицы нулями) и затем к младшему разряду прибавить единицу. В случае возникновения переноса из первого после запятой разряда в знаковый разряд, к числу следует прибавить единицу в младший разряд.
Например, если N = 0,1011, то [N]доп = 0,1011;
N = -0,1100, то [N]доп = 1,0100;
N = -0,0000, то [N]доп = 10,0000 = 0,0000 (1-ца исчезает).
Таким образом, неоднозначности в изображении 0 (нуля) в данном случае нет.
Эмпирическое правило: для получения дополнительного кода отрицательного числа необходимо все символы этого числа инвертировать, кроме последней (младшей) единицы и тех нулей, которые за ней следуют.
2.3. Прочие системы счисления
Кроме рассмотренных систем счисления, применяемых внутри ЭВМ, при работе с компьютерами часто используют также двоично-десятичную и шестнадцатеричную системы.
Двоично-десятичная система счисления получила большое распространение в современных компьютерах ввиду легкости перевода в десятичную систему и обратно. Она используется там, где основное внимание уделяется не простоте технического построения машины, а удобству работы пользователя. В этой системе счисления все десятичные цифры отдельно кодируются четырьмя двоичными цифрами и в таком виде записываются последовательно друг за другом.
Двоично-десятичная система неэкономична с точки зрения реализации технического построения машины (примерно на 20 % увеличивается потребное оборудование), но очень удобна при подготовке задач и при программировании.
В двоично-десятичной системе счисления основанием системы счисления является число десять, но каждая из 10 десятичных цифр (0, 1,..., 9) изображается при помощи 4-х двоичных цифр, то есть кодируется двоичными цифрами. Здесь имеется избыточности, поскольку четыре двоичных цифры (или двоичная тетрада) могут изобразить не 10, а 16 чисел. Существует целый ряд двоично-кодированных десятичных систем представления, отличающихся тем, что определенным сочетаниям нулей и единиц внутри одной тетрады поставлены в соответствие те или иные значения десятичных цифр.
Информация о работе Представление информации в вычислительных машинах