2.6. Типы данных
К оглавлению1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1617 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
34 35 36 37 38 39 40 41 42 43 44 45
Основными типами данных в компьютерах являются байты, слова, двойные слова и квадрослова (рис. 2.12).
Рис. 2.12. Основные типы данных
Каждый из представленных на рис. 2.12 типов данных может начинаться с любого адреса: это означает, что слово не обязано начинаться с четного адреса; двойное слово - с адреса, кратного 4 и т.д. Таким образом достигается максимальная гибкость структур данных и эффективность использования памяти.
Однако обмен данными между процессором и памятью осуществляется в Pentium через 64-битовую ШД (i486 - 32 р.) и для достижения максимальной производительности этого обмена желательно выравнивать слова по чётным адресам, двойные слова - по адресам, кратным 4 и т.д.
На базе основных типов данных строятся все остальные тишя, распознаваемые командами процессора.
Данные со знаком
На рис. 2.13 приведены 4 формата данных со знаком с фиксированной точкой.
Представление таких данных и выполнение операций производится в дополнительном коде.
Данные без знака
На рис. 2.14 показаны три формата данных без знака-
Рис. 2.14. Данные без знака
Данные в формате с плавающей точкой
Формат включает три поля: знака, мантиссы и порядка (рис. 2.15). Поле мантиссы содержит значащие биты числа, а поле порядка содержит степень 2 и определяет масштабирующий множитель для мантиссы. Поддерживаются блоком FPU.
Рис.2.15. Форматы данных с плавающей точкой
Двоично-десятичные данные (BCD)
На рис. 2.16 приведены форматы двоично-десятичных данных.
Рис.2.16. Форматы двоично-десятичных данных
Данные типа строка
Строка представляет собой непрерывную последовательность бит, байт, слов или двойных слов (рис. 2.17). Строка бит может быть длиной до 1 Гби-та, а длина остальных строк может составлять от 1 байта до 4 Гбайтов. Поддерживается АЛУ.
Рис.2.17. Данные типа строка
Символьные данные
Поддерживаются строки символов в коде ASCII и арифметические операции (сложение, умножение) над ними (рис. 2.18). Поддержка осуществляется блоком АЛУ.
Рис.2.18. Символьные данные
Данные типа указатель
Указатель содержит величину, которая определяет адрес фрагмента данных. Поддерживается два типа указателей, приведенных на рис. 2.19.
Диапазон представления целых чисел лежит в интервале от -264 до 264. Диапазон нормализованных чисел с двойной точностью - от ±2,23 х 10-308 до ±1,79х 10-308, а с расширенной точностью - от ±3,37 х 10-4932 до ± 1,18 x 104932.
Рис.2.19. Данные типа указатель
Основными типами данных в компьютерах являются байты, слова, двойные слова и квадрослова (рис. 2.12).
Рис. 2.12. Основные типы данных
Каждый из представленных на рис. 2.12 типов данных может начинаться с любого адреса: это означает, что слово не обязано начинаться с четного адреса; двойное слово - с адреса, кратного 4 и т.д. Таким образом достигается максимальная гибкость структур данных и эффективность использования памяти.
Однако обмен данными между процессором и памятью осуществляется в Pentium через 64-битовую ШД (i486 - 32 р.) и для достижения максимальной производительности этого обмена желательно выравнивать слова по чётным адресам, двойные слова - по адресам, кратным 4 и т.д.
На базе основных типов данных строятся все остальные тишя, распознаваемые командами процессора.
Данные со знаком
На рис. 2.13 приведены 4 формата данных со знаком с фиксированной точкой.
Представление таких данных и выполнение операций производится в дополнительном коде.
Данные без знака
На рис. 2.14 показаны три формата данных без знака-
Рис. 2.14. Данные без знака
Данные в формате с плавающей точкой
Формат включает три поля: знака, мантиссы и порядка (рис. 2.15). Поле мантиссы содержит значащие биты числа, а поле порядка содержит степень 2 и определяет масштабирующий множитель для мантиссы. Поддерживаются блоком FPU.
Рис.2.15. Форматы данных с плавающей точкой
Двоично-десятичные данные (BCD)
На рис. 2.16 приведены форматы двоично-десятичных данных.
Рис.2.16. Форматы двоично-десятичных данных
Данные типа строка
Строка представляет собой непрерывную последовательность бит, байт, слов или двойных слов (рис. 2.17). Строка бит может быть длиной до 1 Гби-та, а длина остальных строк может составлять от 1 байта до 4 Гбайтов. Поддерживается АЛУ.
Рис.2.17. Данные типа строка
Символьные данные
Поддерживаются строки символов в коде ASCII и арифметические операции (сложение, умножение) над ними (рис. 2.18). Поддержка осуществляется блоком АЛУ.
Рис.2.18. Символьные данные
Данные типа указатель
Указатель содержит величину, которая определяет адрес фрагмента данных. Поддерживается два типа указателей, приведенных на рис. 2.19.
Диапазон представления целых чисел лежит в интервале от -264 до 264. Диапазон нормализованных чисел с двойной точностью - от ±2,23 х 10-308 до ±1,79х 10-308, а с расширенной точностью - от ±3,37 х 10-4932 до ± 1,18 x 104932.
Рис.2.19. Данные типа указатель