Файл: В россии в xvixvii веках появилось намного более передовое изобретение.docx
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 29.11.2023
Просмотров: 294
Скачиваний: 2
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
Преобразование чисел из одной системы счисления в другую
Преобразование из десятичной в прочие системы счисления производится в с помощью правил умножения и деления. При этом целая и дробная части переводятся отдельно.
Рассмотрим алгоритм перевода на примере целого числа 137 в двоичную систему. Разделим его нацело на 2, получим 137:2 = 68, остаток 1. Полученный результат можно записать следующим образом:
137 = 68 × 21 +1 × 20.
Продолжим операцию деления дальше
68 : 2 = 34, остаток 0,
137 = (34×2 + 0)× 21+ 1× 20 = 34 × 22 + 0×21 + 1× 20;
34 : 2 = 17, остаток 0,
137 = (17 × 2 + 0)× 22 + 0×21 + 1×20 = 17× 23 + 0× 22 + 0×21 + 1×20;
17:2 = 8, остаток 1,
137 = (8×2 + 1) × 23 +0×22+0 × 21 + 1×20 = 8×24 + 1× 23 +
+ 0× 22 + 0× 21+1 × 20;
8:2 = 4, остаток 0,
137 = (4×2 + 0) × 24+1 × 23 + 0× 22 + 0×21 + 1× 20 = 4×25 +
+ 0 × 24+ 1 × 23+ 0 × 22 + 0 × 21 +1 × 20;
4:2 = 2, остаток 0,
137 = ( 2 × 2 + 0) × 25+ 0 × 24 +1 × 23+ 0 × 22+ 0 × 21+ 1 × 20 =
= 2 × 26+ 0 ×25+ 0 ×24+ 1 × 23 + 0 × 22 + 0 × 21 + 1× 20;
2:2 = 1, остаток 0,
137 = ( 1 ×2 + 0) ×26 + 0 × 25+ 0 × 24 + 1 × 23 + 0 × 22+ 0 × 21 +
+ 1× 20 = 1 × 27 + 0 × 26 + 0 × 25 + 0 × 24 + 1 × 23 + 0 × 22 + 0 × 21+ 1 × 20.
Далее процесс продолжать нельзя, т. к. 0 не делится нацело на 2.
Таким образом, последовательное деление нацело на 2 позволяет разложить число по степеням двойки, а это в краткой записи и есть двоичное изображение числа: 13710 =100010012.
Читая частное и остатки от деления в порядке, обратном получению, найдем двоичную запись числа. Для других систем счисления все описанные действия выполняются аналогичным способом.
Например, это же число 137 в восьмеричную и шестнадцатеричную систему счисления переводится по похожим схемам.
Для дробных чисел правило последовательного деления заменяется правилом последовательного умножения.
Переведем 0.2 из десятичной системы счисления в двоичную. Умножим 0.2 на 2, т.е. 0.2 × 2 = 0.4 или
0.2 = ( 0 + 0.4) × 2-1 = 0 × 2-1 + 0.4 × 2-1 .
0.4 × 2 = 0.8, 0.2 = 0 × 2-1 + (0 + 0.8) × 2-1 × 2-1 = 0 × 2-1
+ 0 × 2-2 + 0.8 × 2-2;
0.8 × 2 = 1.6,
0.2 = 0 × 2-1 + 0 ×2-2 + (1 + 0.6 ) × 2-3 = 0 × 2-1 + 0 × 2-2 + 1×2-3 + 0.6 × 2-3;
0.6 × 2 = 1.2,
0.2 = 0× 2-1 + 0 × 2-2 +1 × 2-3 + (1 + 0.2) × 2-4 = 0 × 2-1 + 0 × 2-2 + 1 × 2-3 + 1 × 2-4 +0.2 × 2-4 ;
0.2 × 2 = 0.4, 0.2 = 0 × 2-1 + 0 × 2-2 + 1 × 2-3 + 1 × 2-4 + (0 + 0.4) × 2-5 = 0 × 2-1 + 0 × 2-2 + 1 × 2-3 +1 × 2-4 + 0 × 2-5 + 0.4 × 2-5 ,
т.е. 0210 =0.00110011...2.
Все вышеприведенные выкладки можно свести в табл. 1.3.
| | Таблица 1.3. | |
| 0 | 0.2 2 | |
| 0 | 0.4 2 | |
| 1 | 0.8 2 | |
| 1 | 0.6 2 | |
| 0 | 0.2 2 | |
| …….. | …….. | |
Заметим, что в десятичной системе правильная дробь переводится в десятичную дробь в конечном виде только тогда, когда ее знаменатель имеет множители только степени двоек и пятерок, т. е. дробь имеет вид к / (2т 5п ).
Аналогично в двоичной системе счисления конечный вид получают дроби, где в знаменателе только степени двойки. Таким образом, большинство десятичных конечных дробей в двоичной системе счисления будут бесконечными периодическими дробями.
Обратный перевод чисел из двоичной системы счисления в десятичную производится методом подстановки.
Для этого необходимо представить число:
137.210 = 10001001.00110011...2 , =
= 1 × 27 +1 × 23 +1 × 20 + 1 × 2-3 +1 × 2-4 +1 × 2-7 +1 × 2-8 +….. =
≈ 137.1992...10.
Между двоичной системой счисления, восьмеричной и шестнадцатеричной существует связь, позволяющая легко переводить числа из одной системы в другую.
Чтобы перевести число из двоичной системы счисления в восьмеричную, надо от десятичной запятой вправо и влево выделить группы по три цифры (триады) и каждую группу независимо от других перевести в одну восьмеричную цифру.
Для перевода в шестнадцатеричную систему необходимо выделять по четыре цифры (тетрады) и переводить каждую группу в одну шестнадцатеричную цифру.
Представление целых и действительных чисел в двоичном коде
Совокупность двоичных разрядов данных в ЭВМ образуют некий битовый рисунок. Группа из восьми взаимосвязанных битов называется байтом. Байт — это минимальная по размеру адресуемая часть памяти компьютера.
Существует несколько типов чисел.
Числа могут быть положительные неотрицательные, целые точные, дробные точные, рациональные, иррациональные, дробные приближенные. Оптимального представления в памяти ЭВМ для всех типов чисел создать невозможно, поэтому для каждого в отдельности типа создается собственный способ представления.
Целые положительные числа от 0 до 255 можно представить непосредственно в двоичной системе счисления, при этом они будут занимать один байт в памяти компьютера (табл. 1.4).
Таблица 1.4. Представление целых положительных чисел в двоичной системе счисления
| Число | Двоичный код | |
| 0 | 0000 0000 | |
| 1 | 0000 0001 | |
| 2 | 00000010 | |
| 3 | 0000 0011 | |
| …… | ……… | |
| 255 | 11111111 | |
Знак отрицательного числа кодируется обычно старшим битом, нуль интерпретируется как плюс, единица как минус.
Поскольку один бит будет занят, то одним байтом могут быть закодированы целые числа в, интервале от -127 до +127. Такой способ представления целых чисел называется прямым кодом.
Существует способ кодирования отрицательных целых чисел в обратном коде.
В этом случае положительные числа совпадают с положительными числами в прямом коде, а отрицательные получаются в результате вычитания из двоичного числа 1 0000 0000 соответствующего положительного числа, например, число -7 получит код 1111 1000. Целые числа больших диапазонов представляются в двухбайтовых и четырехбайтовых адресах памяти.
Точность представления действительных чисел в памяти ЭВМ ограничена. Для представления действительных чисел используется форма их записи, называемая формой с плавающей точкой:
Х = т – gp,:
где: т— мантисса числа, g — основание системы счисления, р— целое число, называемое порядком.
При этом для десятичной системы счисления , мантисса выбирается в диапазоне 1 /g ≤ │m │ < g , т. е. 0.1≤│m│ < 1. Такая форма
представления называется нормализованной.
Существует несколько международных стандартов представления действительных чисел в памяти компьютера. Рассмотрим четырехбайтовый стандарт (рис.1.).
Здесь зафиксированы три группы разрядов. Первый разряд хранит знак мантиссы. За ним следуют разряды, определяющие порядок. С первого по двадцать третий разряд располагается сама мантисса числа. Вместо истинного порядка хранится число, называемое характеристикой (или смещенным порядком). Характеристика равна порядку со смещением, причем смещение используется для более удобного хранения положительных и отрицательных действительных чисел.
Чем больше разрядов отводится под запись мантиссы, тем выше точность представления числа. Чем больше разрядов занимает порядок, тем шире диапазон представления чисел в компьютере при заданном формате.
Рис. 1. Четырехбайтовое представление действительного числа
Для представления основных видов информации (числа, символы, графика, звук) в системах программирования используются специального вида абстракции — типы данных. Каждый тип данных определяет логическую структуру представления и интерпретации для соответствующих данных.
Кодирование текстовых и символьных данных
В двоичной системе счисления кодирование "внешних" символов основывается на сопоставлении каждому из них определенной группы двоичных знаков. Двоичное кодирование символьных данных производится заданием кодовых таблиц, в которых каждому символу ставится в соответствие одно- или двухбайтовый код. Восьми двоичных разрядов достаточно для кодирования 256 различных cимволов. Этого количества достаточно, чтобы выразить все символы английского и русского алфавита, а также знаки препинания, символы основных арифметических операций и некоторые специальные символы.
Наиболее популярная таблица АSСІІ (американский стандартный код информационного обмена) разработана институтом стандартизации США) в 1981 году (табл. 1.10).
Коды с 0 до 127 составляют базовую (основную) таблицу, коды со 128 по 255 — расширенную (дополнительную) таблицу. Дополнительная таблица отдана национальным алфавитам и символам псевдографики.
Аналогичные системы кодирования текстовых данных были разработаны и в других странах. Так, в СССР действовала система кодирования КОИ-8 (код информационного обмена восьмизначный). Компанией Microsoft была введена кодировка символов русского языка, известная как кодировка Windows1251.
Во многих азиатских странах 256 кодов не хватило.
В 1991 году производители программных продуктов (Microsoft , IВМ, Арр1е) выработали единый стандарт Unicode 3.0.
Этот код построен по 31-битной схеме. Все текстовые документы в этой кодировке вдвое длиннее, зато она содержит буквы латинского и многих национальных алфавитов, спецсимволы и т. п.
Таблица 1.10. Базовая таблица кодировки АSСІІ
Кодирование графических данных
Различают три вида компьютерной графики: растровую, векторную и фрактальную.
Они отличаются принципами формирования изображения при отображении на экране монитора или при печати на бумаге.
Если графические объекты формируются в виде множества точек (пикселов) разных цветов и разных яркостей, то это называется растровой графикой. В Интернете применяются только растровые иллюстрации. Основным элементом растрового изображения является точка. Если изображение экранное, то эта точка называется пикселом. В зависимости от того, на какое графическое разрешение экрана настроена операционная система компьютера, на экране могут размещаться изображения 640x480, 800x600, 1024x768 и более пикселов.
При кодировании растровых изображений в памяти компьютера должна храниться информация о каждом пикселе. С размером изображения непосредственно связано его разрешение. Этот параметр измеряется в dpi ( точек на дюйм).
В растровой графике общепринятым на сегодняшний день считается представление черно-белых иллюстраций в виде комбинации точек с 256 градациями серого цвета. Эти мельчайшие точки образуют характерный узор, называемый