- •Структуры и алгоритмы обработки данных Введение
- •1. Структуры данных
- •1.1 Уровни структур данных
- •1.2 Классификация структур данных
- •1.3. Информация и ее представление в памяти эвм
- •2. Простые структуры данных
- •2.1. Понятие о типах данных
- •2.2. Перечисляемый тип данных
- •2.3. Стандартные типы данных
- •2.3.1. Целочисленные типы
- •2.3.2. Вещественные числа
- •2.3.3. Представление и структуры хранения логической информации
- •2.4. Указатели
- •2.4.1. Назначение и смысл указателей
- •2.4.2 Операции с адресами
- •2.4.3 Указатели на указатели
- •2.5. Алгоритмы обработки простых структур данных
- •3. Линейные статические структуры данных
- •3.1 Массивы
- •3.2. Динамические массивы
- •3.3. Многомерные массивы
- •3.4. Связь массивов с указателями
- •3.5. Строки
- •3.6. Массивы указателей
- •3.7. Интерпретация составных описателей
- •3.8 Алгоритмы обработки статических линейных струткур
- •4. Ссылки
- •5. Интегральные типы данных (структуры, битовые поля, объединения)
- •5.1. Структуры
- •5.2. Битовые поля
- •5.3. Объединения
- •6. Файлы
1.3. Информация и ее представление в памяти эвм
Базовой единицей информации является бит, который может принимать одно из двух взаимоисключающих значений.Для представления двух возможных состояний некоторого бита используются двоичные цифры – нуль и единица [слово " бит " ( английское bit ) есть сокращение от английских слов "двоичная цифра" ( binary digit )]. Более крупной единицей информации является байт. Группы смежных битов объединяются в поле. Поле, состоящее из 8 битов называется байтом, причем левый двоичный разряд имеет наибольший вес и считается старшим разрядом, а правый разряд – наименьший вес (младшим разрядом). Нумерация разрядов байтов осуществляется слева направо и начинается с нуля. Кроме 8 информационных битов байт может содержать дополнительный контрольный бит четности, невидимый для программиста.
Группа смежных байтов образуют поле байтов, характеризующееся длиной поля – числом входящих в него байтов и адресом поля – адресом старшего, самого левого, байта в поле, т.е. байта с наименьшим адресом. В общем случае поле байтов может иметь произвольную длину и адрес. Для некоторых частных видов полей имеются специальные названия:
-
полуслово ( для поля, имеющего длину 2 байта),
-
слово (4 байта) и
-
двойное слово ( 8 байт ).
Графическое соотношение между битом, байтом, полусловом, словом, двойным словом для 16-разрядной вычислительной системы показано на рисунке.
|
Байт |
|||||||||
|
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
||
|
Полуслово |
|||||||||
|
|
|||||||||
|
Слово |
|||||||||
|
1 |
0 |
||||||||
Двойное слово |
||||||||||
3 |
2 |
1 |
0 |
Рис. 1.4. Байты и машинные слова
Возможно также четверное слово, состоящее из двух двойных слов. Размер слова может определяться разрядностью системы. В 32-разрядной системе слово будет состоять из 4-х байт, а полуслово – из 2-х и, таким образом, не будет совпадать с байтом.
Поле байтов длиной 1024 байт имеет специальное обозначение – 1Кбайт, кроме того поле длиной 1024х1024 байт обозначается через 1Мбайт, а поле длиной 1024х1024х1024 через 1Гбайт.
Следует обратить внимание на то, что хотя здесь используются традиционные десятичные приставки «кило», «мега» и «гига» (а также, возможно, «тера»), они имеют значения не степеней числа 10 (103, 106 и 109 соответственно), а значения степеней числа 2 (210, 220=210 х 210 и 230 = 210 х 210 х 210). Такое использование десятичных приставок в двоичной системе счисления иногда приводит к неоднозначному толкованию значений данных. Например, емкость накопителей на жестких дисках может быть обозначена именно в десятичной системе счисления, и тогда объём в 10 Гбайт будет означать 10.000.000.000 байт, а не 10.737.418.240 байт. Как видно, разница составляет более 700 миллионов байт!