
- •Основы алгоритмизации и программирования
- •29 Декабря 2011, протокол № 4
- •Введение
- •Этапы развития эвм
- •Поколения эвм
- •Машинно-ориентированные языки программирования
- •Архитектура эвм
- •Микропроцессоры intel
- •Набор регистров
- •Регистры общего назначения
- •Сегментные регистры
- •Регистры состояния и управления
- •Организация памяти
- •Сегментная организация памяти
- •Типы данных
- •Символы
- •Целые числа
- •Указатель на память
- •Цепочки
- •Вещественые числа
- •Двоично-десятичные числа (bcd)
- •Формат команд
- •Обработка прерываний
- •Int тип_прерывания
- •Синтаксис ассемблера
- •Алфавит ассемблера
- •Директивы сегментации
- •Упрощённые директивы сегментации
- •Директивы резервирования и инициализации данных
- •Операнды
- •Способы задания операндов Прямая адресация
- •Косвенная адресация
- •Косвенная базовая адресация
- •Косвенная базовая адресация со смещением
- •Косвенная индексная адресация со смещением
- •Косвенная базовая индексная адресация
- •Косвенная базовая индексная адресация со смещением
- •Операторы
- •Функциональная классификация машинных команд
- •Команды пересылки данных Команды общего назначения
- •Работа с адресами и указателями
- •Преобразование данных
- •Xlat [адрес_таблицы_перекодировки]
- •Ввод из порта и вывод в порт
- •Работа со стеком
- •Арифметические команды Форматы арифметических данных
- •Арифметические операции над целыми двоичными числами
- •Логические команды
- •Команды передачи управления
- •Команда безусловного перехода
- •Условные переходы
- •Организация циклов
- •Основы алгоритмизации и программирования
Типы данных
Программы оперируют с большим количеством самых разнообразных данных, имеющих определённый формат, определяемый размером ячейки (количеством бит), где данное хранится, и способом его представления. Любая величина, видимая программе, имеет тип и должна быть соответствующим образом представлена и описана.
С точки зрения размерности микропроцессор аппаратно поддерживает следующие основные типы данных:
Рисунок 8. Типы данных с точки зрения размерности
байт - восемь последовательно расположенных битов, пронумерованных от 0 до 7, при этом бит 0 является младшим значащим битом;
слово - последовательность из двух байтов, имеющих последовательные адреса. Размер слова - 16 битов, нумерация от 0 до 15. Байт, содержащий 0 бит, называется младшим байтом, а содержащий 15 бит - старшим. Младший байт всегда хранится по меньшему адресу. Адресом слова считается адрес его младшего байта. Адрес старшего байта может быть использован для доступа к старшей половине слова.
двойное слово - последовательность из 4-х байтов (32 бита), расположенных по последовательным адресам. Нумерация этих битов производится от 0 до 31. Слово, содержащее нулевой бит, называется младшим словом, а слово, содержащее 31-й бит, называется старшим словом. Младшее слово хранится по меньшему адресу; Адресом двойного слова считается адрес его младшего слова. Адрес старшего слова может быть использован для доступа к старшей половине двойного слова.
учетверенное слово — последовательность из восьми байт (64 бита), расположенных по последовательным адресам. Нумерация битов производится от нуля до 63. Двойное слово, содержащее нулевой бит, называется младшим, а двойное слово, содержащее 63-й бит, - старшим. Младшее двойное слово хранится по меньшему адресу. Адресом учетверенного слова считается адрес его младшего двойного слова Адрес старшего двойного слова используется для доступа к старшей половине учетверенного слова.
Процессор на уровне команд поддерживает также логическую интерпретацию этих типов. Рассмотрим простые типы данных.
Символы
Символы в компьютере храняться в виде числового кода. Наиболее распространённым является американский стандартный код для обмена информацией (ASCII). Символы могут быть управляющими (коды 0..31, 127) и видимыми (коды 32..127), остальные коды (128..255) были выделены для национальных символов и символов псевдографики.
Целые числа
Целые числа со знаком – двоичное значение, занимающие 8, 16 или 32 бита памяти Знак в этом двоичном числе содержится в 7, 15 или 31 бите соответственно. Ноль в этих битах операндов соответствует положительному числу, а единица - отрицательному. Отрицательные числа представляется в дополнительном коде. Числовые диапазоны для этого типа данных следующие:
8-разрядное целое – от –128 до +127;
16-разрядное целое – от –32768 до +32767;
32-разрядное целое – от –231 до +231 –1.
Целый тип без знака – двоичное значение без знака размером 8, 16 или 32 бита. Числовой диапазон для этого типа следующий:
8-разрядное целое – от 0 до 255;
16-разрядное целое – от 0 до 65535;
32-разрядное целое – от 0 до 232 – 1.