Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабы / motorola / 68LAB1.DOC
Скачиваний:
29
Добавлен:
16.04.2013
Размер:
249.25 Кб
Скачать

1.2. Форматы данных и размещение данных в памяти Форматы данных

Микропроцессор МС68000 позволяет оперировать данными, которые могут быть записаны в следующих форматах:

·беззнаковый двоичный код;

·знаковый двоичный код;

·двоично-десятичный код;

·êîä ASCII.

Беззнаковый двоичный код.

Неотрицательное число может быть представлено в двоичной форме (по основанию числа 2). Таким образом в каждом регистре можно записать неотрицательное число от 0 до 4,294,967,295 (0 - 232-1). Словом можно представить число от 0 до 65535(0 - 216-1), а байтом-от 0 до 255(0 - 28-1).

Знаковый двоичный код.

Для выполнения операций с отрицательными числами используется дополнительный код. В этом формате отрицательное число -N представляется в виде:

-N=2n-N, ãäå

n-число бит, используемых для записи числа. Например десятичное число -45 в форме байта будет записано в следующем виде:

100000000-00101101=11010011,

что может быть полученно инвертированием числа 00101101 и добавлением единицы к результату.

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

Двоично-десятичный код.

В двоично-десятичном формате каждая десятичная цифра кодируется четырьмя битами. Таким образом в одном байте может хранится две десятичные цифры. Например число 3509 записывается двумя байтами:

00110101 00001001

МС68000 имеет в своем распоряжении команды, позволяющие выполнять операции сложения и вычитания с использованием двоично-десятичного кода.

ASCII-êîä.

Нечисловые данные обычно хранятся в формате ASCII (American Standart Code for Information Interchange). Данные представляются строкой ASCII символов, каждый из которых записывается одним байтом, используя 7 бит. Таким образом можно закодировать 128 символов, включая управляющие. При передаче ASCII символов старший бит используется для проверки четности.

Размещение данных в памяти.

МП МС86000 имеет возможность доступа в памяти к байту (8 бит), слову (16 бит) и длинному слову (32 бита). В отличие от МП фирмы Intel (8086, 80286, 80386, 80486) в МП 68000 приняты следующие соглашения:

· слова (длинные слова) могут размещаться только по четным адресам;

· старшие байты слова (двойного слова) располагаются в ячейках с меньшими адресами;

· адресом слова (двойного слова) считается его старший байт.

Таким образом, в соответствии с концепцией, принятой фирмой Моторола, слово размещается в памяти в двух соседних ячейках и начинается со старшего байта. Это означает, что при чтении слова, размещенного по адресу Х МС68000 считывает два соседних байта, причем байт по адресу Х интерпретируется как старший, а байт по адресу Х+1 как младший. Соответственно, длинное слово размещается в четырех смежных ячейках памяти, причем старший байт длинного слова находится по меньшему адресу. На рис.1.3 в качестве примера приведено размещение слов в памяти в доступном адресном пространстве 16М байт.

Рис.1.3. Принцип организации размещения слов в памяти.

Учитывая важность вышеизложенного материала, приведем несколько примеров размещения данных в памяти (все цифры приведены в шестнадцатеричной системе счисления).

Пусть в памяти находятся по соответствующим адресам следующие данные:

Адрес Данные

.

.

.

001204 12

001205 34

001206 56

001207 78

.

.

.

00350Ñ 9À

00350D BC

00350E DE

00350F F0

Выполняемая процессором МС68000 операция: Результат:

1) Чтение байта по адресу 001205 Байт 34

2) Чтение слова по адресу 001204 Слово 1234

3) Чтение длинного слова по адресу 001204 Длинное слово 12345678

4) Запись байта 11 по адресу 00350С Ячейки 00350С-00350F

содержат 11, BC, DE и F0

5) Запись слова 1122 по адресу 00350С Ячейки 00350С-00350F

содержат 11, 22, DE и F0

6) Запись длинного слова 11223344 Ячейки 00350С-00350F

по адресу 00350С содержат 11, 22, 33 и 44

Соседние файлы в папке motorola