Учебная работа. Лабораторная работа: Системы счисления и представления типов данных

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (Пока оценок нет)
Загрузка...
Контрольные рефераты

Учебная работа. Лабораторная работа: Системы счисления и представления типов данных

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

Содержание

1.Позиционные системы счисления. 3

2.Переходы меж главными системами счисления. 5

3.Главные 16‑ичные константы.. 5

4.Реализация целочисленных операций. 7

5.системы счисления

Позиционные системы счисления (СС) – это системы счисления, в каких количественный эквивалент каждой числа зависит от ее положения (позиции) в записи числа. к примеру:

1) шестидесятиричная (Старый Вавилон) – 1-ая позиционная система счисления. До сего времени при измерении времени употребляется основание равное 60 (1 мин = 60 с, 1 ч = 60 мин);

2) двенадцатеричная система счисления (обширное распространение получила в XIX в. Число12 – «дюжина»: в сутках две дюжины часов. Счет не по пальцам. а по суставам пальцев. На любом пальце руки, не считая огромного, по 3 сустава – всего 12;

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

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

Двоичная система: {0, 1}

Восьмеричная система: {0, 1, 2, 3, 4, 5, 6, 7}

Шестнадцатеричная система: {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F}

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

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

Десятичная система: 100
, 101
, 102
, 103
, 104
,…, 10n
,…

Двоичная система: 20
, 21
, 22
, 23
, 24
,…, 2n
,…

Восьмеричная система: 80
, 81
, 82
, 83
, 84
,…, 8n
,…

Свернутой формой записи числа именуется запись в виде

A=an
-1
an
-2
…a1
a0
.a-1
…a-
m

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

Пример
. Десятичное число 4718,63, двоичное число 1001,1, восьмеричное число 7764,1, шестнадцатеричное число 3АF16

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

А= ± (an-1
qn-1
+an-2
qn-2
+ … +a0
q0
+a-1
q-1
+a-2
q-2
+ … +a-
m
q-
m
)

тут А – само число, q – основание системы счисления, ai
– числа, принадлежащие алфавиту данной системы счисления, n – число целых разрядов числа, m – число дробных разрядов числа. Развернутая форма записи числа – сумма произведений коэффициентов на степени основания системы счисления.

Пример
. Десятичное число А10
= 4718,63 в развернутой форме запишется так:

А10
= 4·103
+ 7·102
+ 1·101
+ 8·100
+ 6·10-1
+ 3·10-2

Двоичное число А2
= 1001,1 = 1·23
+ 0·22
+ 0·21
+ 1·20
+ 1·2-1

Восьмеричное число А8
= 7764,1 = 7·83
+ 7·82
+ 6·81
+ 4·80
+ 1·8-1

Шестнадцатеричное число А16
= 3АF16 = 3·162
+ 10·161
+ 15·160


2. Переходы меж главными системами счисления

Главные СС имеют основания 2, 8,10, 16. системы с основаниями 2, 8 и 16 являются схожими, потому что их основания являются степенями двойки. Переходы меж ними реализуются просто.

2 ® 8. Двоичное число разбивается справа влево на триады (тройки цифр) и любая триада заменяется на 8‑ичную цифру.

2 ® 16. Двоичное число разбивается справа влево на тетрады (четверки цифр) и любая тетрада заменяется на 16‑ичную цифру.

8 ® 16 и 16 ® 8. Преобразование идет через двоичную СС.

Хоть какое основание ® 10. Осуществляется по определению позиционной системы счисления.

10 ® 16. Имеется два метода преобразования.

1. способ деления «уголком» строит результирующее 16‑ичное число от младших цифр к старшим. Для этого запоминаются целые остатки от деления начального числа на 16, пока личное не станет равным 0. Записывая эти остатки в оборотном порядке, получим ответ.

2. способ «вычерпывания» состоит из нескольких итераций. На каждой итерации начальное число х оценивается снизу наибольшей степенью m новейшего основания p= 16: х ≥ 16m
. Потом определяем число r вхождений степени 16m
в число х. В конце концов, 16‑ичную цифру r записываем в результирующее число в разряд с номером m. Число x заменяем на наименьшее число х – r · 16m
. Если новое число х = 0, то метод завершается, и другие разряды результата заполняем нулями. В неприятном случае, перебегаем к последующей итерации.


3. Главные 16‑ичные константы

Большая часть числовых констант, которые встречаются в компьютерной технике, являются круглыми шестнадцатеричными числами. Эти числа обычно записывают в десятично-буквенном виде, имеющем формат ab, где а – десятичное число, b – буковка.

Таблица 1.Шестнадцатеричные константы


16‑ичная константа
Десятично-буквенное Последующая таблица содержит пользующиеся популярностью степени числа 2, также их российские и английские наименования.

Таблица 2. Степени числа 2


Показатель степени
Степень
Примечания

0
1

1
2

2
4

3
8

4
16

5
32

6
64

7
128

8
256

9
512

10
К = 1024 » 103
, К
Кб, Kilobyte

20
М = К·К = К2
» 106
, М
Мб, Megabyte

30
Г = К3
» 109
, G
гб, Gigabyte

40
Т = К4
= М2
» 1012
, T
Терабайт, Terabyte

50
П » 1015
, P
Петабайт, Petabyte

60
Э » 1018
, E
Экзабайт, Exabyte

70
З » 1021
, Z
Зетабайт, Zettabyte

80
Й » 1024
, Y
Йотабайт, Yottabyte

Крайние строчки кратных единиц были дополнены ГОСТом в 1991. Вычисления с числами, представленными в десятично-буквенном виде, можно производить без перехода в десятичную СС. к примеру, 32 Т / 256 К = 245
/ 218
= 227
= 128 М.

Таблицы 1 и 2 разрешают переводить 16‑ичные числа в десятично-буквенную запись без внедрения вычислительных средств. к примеру,
0х7D8A30 = 7·0x100000 + 13·0x10000 + 8·0x1000 + 10·0x100 + 3·16 = 7 M + 13·64 K + 8·4 K + 10·(K/4) + 48 = 7 M + 866,5 K + 48.

Отметим, что для десятично-буквенных чисел не производится дистрибутивный закон, другими словами 1 М + 100 К не равен 1,1 М.


4. Реализация целочисленных операций

адресок, yyyy – шестнадцатеричное смещение. Физическим адресом данной нам ячейки именуется число xxxx0 + yyyy.

Пример
. Область кода программки размещена с ячейки 55А3:3000 по ячейку 9EEF:A0FF. Оценить размер области в кб.

Решение
. Физический адресок начала области 0х55А30 + 0х3000 = 0х58A30, конца области 0х9EEF0 + 0хA0FF = 0хA8FEF. Размер данной нам области равен 0хA8FEF– 0х58A30 + 1 = 0x505C0 = 5·64 К + 0·4 К + 10· (К/4) + 12·16= (320 + 2,5) К + 192 = 322,5 К + 192.

Определение 2
. Нормализованным адресом ячейки памяти ОЗУ с 20‑битной адресной шиной именуется запись xxxx:yyyy, где хххх – шестнадцатеричное число, yyyy – шестнадцатеричное смещение, не превосходящее размера параграфа, другими словами из спектра от 0 до 15.

Арифметические операции сложения, вычитания, умножения и деления с 16‑ичными числами осуществляются аналогично 10‑ичным числам, другими словами «столбиком». Но, имеются некие отличия.

Пример
. Аспекты деления 16‑ичного целого числа на 3 и на 5 смотрятся идиентично: сумма цифр обязана делится, соответственно, на 3 и на 5.

Пример
. Оказывается в 16‑ичной СС 0x112
= 0x121, 0x122
= 0x144, 0x132
= 0x169.

Пример
. Десятичное число 0,1 недозволено представить в виде конечной 2‑ичной дроби A= 0, a-1
…a-
m
= a-1
2-1
+ a-2
2-2
+… + a-
m
2-
m
. В неприятном случае, умножая равенство 0,1 = А на 10·2m
, получим 2m
= 10·(a-1
2m
-1
+
a-2
2m
-2
+… + a-
m
20
). Крайнее равенство нереально, потому что правая часть делится на 5, а левая – нет.


5. нужно побитово инвертировать и прибавить единицу.

Этот код основан на ординарном суждении, что x+ (-x) = 0 при сложении двоичных чисел столбиком. При всем этом единица, которая перебегает из старшего 7‑го бита в несуществующий 8‑ой бит, теряется. К примеру, для однобайтного числа x = 5 имеем

x = 5 = 0000 0101

+

– x = -5 = **** ****

____________________

0 = 0 = 0000 0000

сейчас конструируем число -5 = 1111 1011.


6. Целочисленные типы данных в языке Си

Таблица 3. Целочисленные типы данных


Заглавие типа
Размер в б
Спектр

unsigned char
1

0 … 255,

0. 28
-1




char, signed char
1

-128 … 127,

-27
… 27
-1




unsigned int
2
0. 65535,
0. 216
-1,
0…64K–1

int, signed int
2
-32758 … 32757,
-215
… 215
— 1,
-32 K… 32 K– 1

unsignedlong
4
0… 232
— 1,
0… 4 M– 1

long
4
-231…
231
— 1,
0… 4 M– 1

По дефлоту целые десятичные константы имеют тип int. Потому все целые числа должны содержаться в спектре -32758… 32757. к примеру, запись x = 100000 будет неверна независимо от типа переменной x. Для обозначения целой константы типа long употребляется суффикс l. Тогда инициализация longx = 100000l будет корректна.

Компилятор не инспектирует выход результата целочисленного выражения за спектр типа. Запись longx = 20000 + 20000 будет неверна, потому что 40000 не содержится в спектре типа int. Это будет «отлично сокрытая» ошибка. Реально x будет содержать 40000 – 64 К. Запись longx = 20000l + 20000 будет уже корректна, потому что итог будет иметь уже тип long.

Построим область корректного сложения для типа char.

char x, y, z;

x = y = 100;

z = x + y;

Нарисуем в системе координат (x, y) огромное количество, для которого z будет содержать корректный ответ. Имеем систему

решением которой является шестиугольник.

Рис. 1. Спектр корректного сложения


7. Вещественные типы данных в языке Си

Вещественные типы постоянно имеют символ.

Определение 3
. Нормализованной формой ненулевого числа x именуется запись x = M×10p
, где M– мантисса, 0,1 £½M½ < 1, p – порядок числа х.

Нормализованная форма числа единственна.


Таблица 4. Вещественные типы данных


Заглавие типа
Размер в б
Размер мантиссы в десятичных знаках
Размер порядка в битах
Спектр

float
4
7–8
8
3,4×10-38
… 3,4×1038


double
8
15–16
11
1,7×10-3
0
8
… 1,7×103
0
8


longdouble
10
19–20
15
3,4×10-4932
… 1,1×104932


Определение 4
. Машинным нулем для данного вещественного типа именуется малое положительное число такого же типа

m0
= min {x: x > 0}.

Определение 5
. Машинным эпсилон для данного вещественного типа именуется малое число такого же типа, для которого 1 + x > 1

me
= min {x: 1 + x > 1}.

Определение 6
. Машинной бесконечностью для данного вещественного типа именуется наибольшее число такого же типа


= max{x}.

По спектру типа можно найти m0
, m¥
. Машинный эпсилон определяется размером мантиссы. Так, к примеру, для типа float имеем

m0
= 3,4×10-38
, m¥
= 3,4×1038
, me
» 10-8
.

Определение 7
. «Правым соседом» числа x данного вещественного типа назовем малое число y такого же типа, для которого x < y

«Правый сосед» х = min {y: x < y}.

«Правый сосед» числа х больше самого х на величину равную

me
× 10порядок числа х
.

Приближенно можно считать, что «правый сосед» числа х » х + me
×x.

к примеру, для типа float «правый сосед» числа 1010
» 1010
+ 10-8
× 1010
= 1010
+ 100.

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

характеристики типа в таблице 4 соединены меж собой.

задачка
. Вещественный тип doom занимает 15 б, под порядок отведено 30 бит. Найти другие характеристики этого типа.

Решение
. порядок занимает 30 бит, потому малое двоичное » 0,5 × 10-
161290865,49
» 1,54 × 10-
161290865
.

Мантисса в двоичной системе счисления занимает 90 бит, из которых один бит описывает символ мантиссы. Потому что 1-ые знаки двоичной мантиссы равны 0,1 и постоянно схожи, то под их память не отводится. Потому другие 89 бит мантиссы занимают разряды с номерами от -2 до -90. «Правый сосед» единицы равен 0,100…0012
× 21
, где крайняя единица стоит в -90‑ом разряде. Тогда

me
= 2-89
= 10-89
×
lg
(2)
= 10-26
,
7
9
= 6,17 ×10-26


8. Кодирование знаков

Для кодировки знаков при помощи 1-го б употребляется ASCII‑таблица (AmericanStandardCodeforInformationInterchage)

В ASCII‑таблице содержатся разные знаки и надлежащие им коды. к примеру, символу ‘0’ соответствует код 0x30 = 48. Знаки и строчки хранятся в памяти в виде соответственных кодов из ASCII‑таблицы. К примеру, строчка «123» в памяти будет храниться в виде последовательности б 0х31 0х32 0х33 0х00. время от времени строчки, у каких 0 является признаком конца, именуют asciiz‑строчками.


Таблица 5. ASCII – таблица знаков


Основная таблица ASCII
Расширенная таблица ASCII




Символу ‘b’ соответствует «ASCII‑код» 0x62. В десятичной системе это будет 98, а в двоичной – 01100010. Код знака ‘b’ вы сможете поглядеть из ASCII‑таблицы. Таблицы знаков для различных шрифтов можно отыскать при помощи программки Таблица Знаков: Запуск – Обычные – Системные утилиты – Таблица Знаков).

В российской кодировочной страничке 866 буковка Ё имеет код 0xF0, а буковка ё – код 0хF1.

В языке Си символьные константы обозначаются ‘xxx’, где ххх – код этого знака, записанный в восьмеричной СС. По другому говоря,
‘xxx’ – это код знака, у которого код равен ххх.

Примеры
. 1. количество букв в британском алфавите равно
‘Z’ – ‘A’ + 1.

2. Количество букв в российском алфавите равно ‘Я’ – ‘А’ + 2.


9. Схемы алгоритмов

Для облегчения вычерчивания и нахождения на схеме знаков рекомендуется поле листа разбивать на зоны. размеры зон устанавливают с учетом малых размеров знаков, изображенных на данном листе. Допускается один знак располагать в 2-ух и наиболее зонах, если размер знака превосходит размер зоны. Координаты зоны проставляют: по горизонтали – арабскими цифрами слева вправо в верхней части листа; по вертикали – строчными знаками латинского алфавита сверху вниз в левой части листа. Координаты зон в виде сочетания букв и цифр присваивают символам, вписанным в поля этих зон, к примеру: A1, A2, A3, B1, B2, B3 и т.д. Если поле листа не разбито на зоны, символам присваивают порядковые номера.

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

Сокращения слов и аббревиатуры, не считая обычных и принятых, должны быть расшифрованы в нижней части поля схемы либо в документе, к которому эта схема относится. Записи снутри знака должны быть представлены так, чтоб их можно было читать слева вправо и сверху вниз, независимо от направления потока. (вид

должен быть прочитан как вид

).

Рис. 2. Эквивалентные фрагменты схемы метода


Таблица 6. Соединитель


Обозначение
Комменты
Внедрение



,
,
,
– идентификаторы соединителей в виде:
буковкы и числа (координаты зоны листа)
При большенный насыщенности схемы знаками отдельные полосы потока меж удаленными друг от друга знаками допускается обрывать. При всем этом в конце (начале) обрыва должен быть помещен знак «Соединитель»


буковкы


числа

Таблица 7. Межстраничный соединитель


Обозначение
Комменты
Внедрение


1-ая строчка снутри межстраничного соединителя описывает номер листа схемы, 2-ая – координату знака
а) связываемые линией потока знаки находятся на различных листах



– описывает зону на данном листе, где размещен знак «Комментарий»
– описывает номер листа и зону расположения, связываемую с эмблемой

б) в случае связи некого знака со почти всеми иными знаками, расположенными на различных листах, на входе этого знака помещают один знак «Межстраничный соединитель», снутри которого на первой строке помещают символ #, а на 2-ой строке – координаты знака «Комментарий». Снутри знака «Комментарий» указывают номера страничек и координаты знаков, связанных с поясняемым эмблемой

Таблица 8. Полосы потока


Обозначение
Комменты
Внедрение


Используют для указания направления полосы потока: можно без стрелки, если линия ориентирована слева вправо и сверху вниз; со стрелкой – в других вариантах


Излом полосы потока под углом 90о

Обозначает изменение направлений полосы потока


Пересечение линий потока
Применяется в случае пересечения 2-ух несвязанных линий потока


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


пространство слияний линий потока обозначено цифрой 0


Таблица 9. Вероятные варианты отображения решения


Обозначение
Комменты
Внедрение


,
– условия решений;


,
,
характеристики



При числе исходов не наиболее 3-х признак условия решения (Да, Нет, =, >, <) проставляют над каждой линией потока либо справа от полосы потока

yi

– условие
‑го финала,
,
,
,
– адреса исходов.

структура адреса имеет вид:



При числе исходов наиболее 3-х условие финала проставляется в разрыве полосы потока. адресок финала проставляется в продолжении условия финала и отделяется от него пробелом



символ, указывающий, что условия решения даются в виде таблицы либо знака «Комментарий», расположенных на данном листе в зоне

в знаке «Соединитель» указывают координату зоны, куда обязана помещаться таблица либо знак «Комментарий»

Таблица 10

Знаки в схемах алгоритмов


Заглавие знака
Обозначение
Внедрение

1. процесс

Выполнение операции либо группы операций, в итоге которых меняется
Выбор направления выполнения метода либо программки зависимо от неких переменных критерий

3. Модификация

Выполнение операций, меняющих команды, либо группы установок, изменяющих программку

4. Предопреде
ленный процесс

Внедрение ранее сделанных и раздельно обрисованных алгоритмов либо программ

5. Ручной ввод

Ввод данных вручную с помощью неавтономных устройства с клавиатурой, переключателей, клавиш

6. Ввод-вывод

Преобразование данных в форму, подходящую для обработки (ввод) либо отображения результатов обработки (вывод)

7. документ

Ввод-вывод данных, носителем которых служит бумага

8. файл

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

9. Линия потока

Указание последовательности связей меж знаками

10. Соединитель

Указание связи меж прерванными линиями потока, соединяющими знаки

11. Запуск-останов

Начало, конец, прерывание процесса обработки данных либо выполнения программки

12. Комментарий

Связь меж элементом схемы и пояснением

13. Межстраничный соединитель

Указание связи меж разъединенными частями схем алгоритмов и программ, расположенных на различных листах

Размер a должен выбираться из ряда 10, 15, 20 мм. Допускается наращивать размер a на число, кратное 5. Размер b равен 1,5 × a. При ручном выполнении схем алгоритмов и программ допускается устанавливать b равным 2 × a.

]]>