- •Cистемы счисления.
- •Преобразование чисел из одной системы счисления в другую. Правила перевода целых чисел
- •Правила перевода правильных дробей
- •Правило перевода дробных чисел
- •Виды двоичных кодов
- •Беззнаковые двоичные коды.
- •Прямые знаковые обратные двоичные коды.
- •Знаковые дополнительные двоичные коды.
- •Правила выполнения простейших арифметических действий. Правила сложения
- •Правила вычитания
- •Правила умножения
- •Правила деления
- •Дополнительный код числа.
- •Алгоритм получения дополнительного кода отрицательного числа.
- •Представление вещественных чисел в компьютере.
- •Нормализованная запись числа.
- •Представление чисел с плавающей запятой.
- •Алгоритм представления числа с плавающей запятой.
- •Конвейерная организация
- •Определение понятия "архитектура"
- •Архитектуры cisc и risc
- •1.1. Основные определения
- •1.2. Обзор 32-разрядного микропроцессора
- •1.2.1. Основные блоки
- •1.2.2. Устройство управления памятью
- •1.2.3. Архитектура режима реальных адресов и защищенного режима
- •1.3. Типы данных
- •Арифметико-логическое устройство
- •Системная шина
- •Состав магистрали
- •Виды шин
- •Шина с тремя состояниями
- •Как происходят операции на магистрали?
- •Шина usb
- •Память эвм
- •Организация внутренней памяти процессора.
- •Методы управления памятью без использования дискового пространства (без использования внешней памяти).
- •Организация виртуальной памяти.
- •Страничное распределение.
- •Сегментное распределение.
- •Странично - сегментное распределение.
- •12.3.1. Статические озу (sram)
- •12.3.1.1. Элемент памяти ram в ттл-исполнении
- •Активация ячейки памяти
- •12.3.2.2. Особенности динамических озу
- •12.3.3.3. Некоторые виды озу
- •Современная оперативная память
- •12.6. Перепрограммируемые постоянные запоминающие устройства
- •Находящиеся на свету сппзу и reprom могут быть случайно стерты.
- •История Кэш-памяти
- •] Функционирование
- •Кэш центрального процессора
- •Уровни кэша
- •Ассоциативность кэша
- •Кэширование внешних накопителей
- •Организация кэш-памяти
- •1. Где может размещаться блок в кэш-памяти?
- •2. Как найти блок, находящийся в кэш-памяти?
- •3. Какой блок кэш-памяти должен быть замещен при промахе?
- •4. Что происходит во время записи?
- •Принцип действия флэш
- •Архитектура флэш-памяти.
- •Доступ к флэш-памяти
- •Последовательный асинхронный адаптер (com порт)
- •Принципы построения параллельного порта.
- •Чтение/запись в lpt порт (Часть 1)
- •Внутренности lpt порта
- •Запись/чтение данных в регистр Data
- •Запись/чтение данных в регистр Control
- •Запись/чтение данных в регистр Status
- •Понятие прерывания.
- •Подсистема прерываний мпс
- •Интерфейсы ввода-вывода
- •Классификация интерфейсов
- •Типы и характеристики стандартных шин
- •Классификация и структура микроконтроллеров
- •4.2. Процессорное ядро микроконтроллера
- •4.2.1. Структура процессорного ядра мк
- •4.2.2. Система команд процессора мк
- •4.2.3. Схема синхронизации мк
- •4.3. Память программ и данных мк
- •4.3.1. Память программ
- •4.3.2. Память данных
- •4.3.3. Регистры мк
- •4.3.4. Стек мк
- •4.3.5. Внешняя память
1.3. Типы данных
Микропроцессор 80386 подразделяет память на 8-разрядные байты, 16-разрядные слова и 32-разрядные двойные слова. Байт образуют восемь соседних битов, начинающихся с любого логического адреса, и эти биты нумеруются с 0 до 7, причем бит 0 является самым младшим значащим битом.
Слова хранятся в порядке «старший байт, младший байт». Таким образом, значение, которое в регистре АХ было бы 0201, в памяти было бы представлено как 0102-числа в шестнадцатеричной системе счисления. То есть слова содержат 16 бит и младший байт хранится по меньшему адресу, а старший байт - по большему адресу. Каждый байт внутри слова имеет свой собственный адрес. Адресом слова или двойного слова является адрес соответствующего младшего байта.
Для достижения максимальной гибкости в структурах данных и эффективного использования памяти слова необязательно выравнивать по четным адресам. Двойные слова также необязательно выравнивать по адресам, кратным четырем. Однако при использовании в системной конфигурации с 32-разрядной магистралью обмен данными между процессором и памятью производится двойными словами, начинающимися с адресов, кратных четырем. Процессор преобразует запросы невыровненных слов или двойных слов в последовательность запросов, приемлемых для интерфейса с памятью. Таким образом, отсутствие выравнивания данных снижает производительность из-за увеличения количества обращений к памяти. Для повышения производительности структуры данных и стеки следует выравнивать по четным адресам и по адресам, кратным четырем.
Поскольку предварительная выборка с образованием очереди команд осуществляется внутри МП, то команды не обязаны быть выровнены по границам слов или двойных слов. Однако при таком выравнивании скорость обработки несколько увеличивается.
В дополнение к байтам, словам и двойным словам МП 80386 поддерживает также следующие дополнительные типы данных.
Неупакованный двоично-десятичный тип - распакованное байтовое представление десятичной цифры от 0 до 9. Распакованные десятичные числа хранятся как беззнаковые байтовые значения по одной цифре в каждом байте. Значение цифры определяется младшим полубайтом. Старший полубайт должен быть равным нулю при делении и умножении, но может иметь любое значение при вычитании или сложении.
Упакованный двоично-десятичный тип — упакованное байтовое представление двух десятичных цифр от 0 до 9. Каждая цифра хранится в своем полубайте. Цифра в старшем полубайте является более значимой. Диапазон упакованного десятичного байта составляет от 0 до 99.
Битовое поле - непрерывная последовательность битов, в которой каждый бит рассматривается как независимая переменная. Битовое поле может начинаться с любого бита любого байта и может быть длиной до 32 бит.
Битовая строка - подобно битовому нолю, битовая строка является непрерывной последовательностью битов. Битовая строка может начинаться с любого бита любого байта и иметь длину до (232—1) бит.
Ближний указатель — 32-разрядный логический адрес, который представляет собой относительный адрес внутри сегмента. Ближние указатели используются как в сплошной, так и в сегментированной модели памяти.
Дальний указатель 48-разрядный логический адрес из двух компонентов: 16-разрядного сегмента и 32-разрядного относительного адреса. Дальние указатели используются программистами только в том случае, когда конструкторы системы выбирают сегментированную организацию памяти.
Целый тип- знаковое двоичное значение, содержащееся в 32-разрядном двойном слове, 16-разрядном слове или 8-разрядном байте. Все операции предполагают представление чисел в дополнительном коде. Знаковый бит расположен в бите 7 в байте, в бите 15 в слове и в бите 31 в двойном слове. Он равен нулю для положительных чисел и единице для отрицательных. Поскольку этот старший бит используется как знаковый, то 8-разрядное (байт) целое число может изменяться в диапазоне от —128 до +127, 16-разрядное (слово) целое число в диапазоне от — 32768 до +32767, а 32-разрядное (двойное слово) целое число в диапазоне от — 231 до + 231 — 1. Нулевое значение имеет положительный знак.
Обычный тип - беззнаковое двоичное значение, содержащееся в 32-разрядном двойном слове, 16-разрядном слове или 8-разрядном байте. Все биты определяют величину числа. Значение числа для байта составляет от 0 до 255, для слова от 0 до 65535 и для двойного слова от 0 до 232 — 1.
Строка - непрерывная последовательность байтов, слов или двойных слов. Строка может содержать от 0 до 232 — 1 байтов или 4 Гбайт.