МЕНЮ


Фестивали и конкурсы
Семинары
Издания
О МОДНТ
Приглашения
Поздравляем

НАУЧНЫЕ РАБОТЫ


  • Инновационный менеджмент
  • Инвестиции
  • ИГП
  • Земельное право
  • Журналистика
  • Жилищное право
  • Радиоэлектроника
  • Психология
  • Программирование и комп-ры
  • Предпринимательство
  • Право
  • Политология
  • Полиграфия
  • Педагогика
  • Оккультизм и уфология
  • Начертательная геометрия
  • Бухучет управленчучет
  • Биология
  • Бизнес-план
  • Безопасность жизнедеятельности
  • Банковское дело
  • АХД экпред финансы предприятий
  • Аудит
  • Ветеринария
  • Валютные отношения
  • Бухгалтерский учет и аудит
  • Ботаника и сельское хозяйство
  • Биржевое дело
  • Банковское дело
  • Астрономия
  • Архитектура
  • Арбитражный процесс
  • Безопасность жизнедеятельности
  • Административное право
  • Авиация и космонавтика
  • Кулинария
  • Наука и техника
  • Криминология
  • Криминалистика
  • Косметология
  • Коммуникации и связь
  • Кибернетика
  • Исторические личности
  • Информатика
  • Инвестиции
  • по Зоология
  • Журналистика
  • Карта сайта
  • Бакалаврская работа. Программная модель 32-разядной МЭВМ фирмы Motorola

    указателя стека. Если в процессе дальнейшей работы потребуется перевод

    процессора в режим пользователя, то с помощью команды MOVE to SR в регистр

    SR загружается новое содержимое, в котором бит S=0. Обратный перевод в

    режим супервизора производится при обслуживании запросов прерывания или

    возникновении исключительных ситуаций, а также в процессе установки

    процессора в начальное состояние (повторный запуск) при поступлении

    внешнего сигнала сброса или команды RESET.

    Регистры VBR, SFC, DFC доступны только в режиме супервизора. В 32-

    разрядный регистр VBR заносится базовый адрес таблицы векторов исключений.

    Загрузка этого регистра производится командой MOVEC. При обслуживании

    исключений формируемое процессором значение Av=4Ne является относительным

    адресом (смещением), определяющим положение выбираемого вектора в таблице,

    которая может быть размещена в любом месте адресного пространства. В 3-

    разрядные регистры SFC,DFC с помощью команды MOVEC заносится код адресного

    пространства, который поступает на выводы FC2-0 микроконтроллера при

    выполнении команды MOVES. Таким образом обеспечивается расширение адресного

    пространства с помощью организации виртуальной памяти

    Форматы данных

    Процессор выполняет обработку битов, байтов, 16-разрядных слов, 32-

    разрядных длинных слов и двоично-десятичных чисел (1 байт = 2 десятичных

    разряда). Обрабатываемые данные - операнды могут располагаться в регистрах

    (данных или адреса) или оперативной памяти. Для выборки слова (байты B1-0)

    или длинного слова (байты B3-0) команда задает адрес старшего байта N,

    четный или кратный четырем. При этом слова и длинные слова размещаются

    таким образом, что младшие байты (разряды D7-0 данных) располагаются в

    ячейках памяти с большими адресами: N+1 или N=3 (рис.3.3). Такое размещение

    байтов в памяти от старшего к младшему соответствует естественному порядку

    их написания слева - направо. Этот порядок адресации байтов называется в

    зарубежной литературе "big-endian". Он отличается от порядка "little-

    endian", принятого компанией INTEL и рядом других производителей, когда

    размещение слова начинается с младшего байта, адрес которого служит адресом

    слова.

    МП МС86300 имеет возможность доступа в памяти к байту (8 бит), слову

    (16 бит) и длинному слову (32 бита). В отличие от МП фирмы Intel (8086,

    80286, 80386, 80486) в МП 68300 приняты следующие соглашения:

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

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

    меньшими адресами;

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

    Таким образом, в соответствии с концепцией, принятой фирмой Моторола,

    слово размещается в памяти в двух соседних ячейках и начинается со старшего

    байта. Это означает, что при чтении слова, размещенного по адресу Х МС68300

    считывает два соседних байта, причем байт по адресу Х интерпретируется как

    старший, а байт по адресу Х+1 как младший. Соответственно, длинное слово

    размещается в четырех смежных ячейках памяти, причем старший байт длинного

    слова находится по меньшему адресу.

    Способы адресации

    Процессор CPU32 реализует следующие способы адресации операндов:

    . регистровая (операнд в регистре данных или адреса),

    . косвенно-регистровая (операнд в ячейке памяти, адресуемой содержимым

    регистра адреса),

    . косвенно-регистровая с постинкрементом (операнд в ячейке памяти,

    адресуемой содержимым регистра адреса, которое автоматически

    увеличивается после выборки операнда для адресации следующей ячейки),

    . косвенно-регистровая с предекрементом (операнд в ячейке памяти,

    адресуемой содержимым регистра адреса, которое автоматически

    уменьшается перед выборкой операнда для адресации предыдущей ячейки),

    . косвенно-регистровая со смещением (операнд в ячейке памяти, адрес

    которой является суммой содержимого регистра адреса и 16-разрядного

    смещения d16, заданного в команде),

    . косвенно-регистровая с индексированием (операнд в ячейке памяти, адрес

    которой является суммой содержимого регистра адреса, индексного

    регистра и данного в команде 8-разрядного смещения d8),

    . прямая (операнд в ячейке памяти, адрес которой задается числом Abs,

    указанным в команде),

    . относительная (операнд в ячейке памяти, адрес которой является суммой

    текущего содержимого программного счетчика PC и данного в команде 16-

    разрядного смещения d16 или базового смещения bd),

    . относительная с индексированием (операнд в ячейке памяти, адрес

    которой является суммой содержимого программного счетчика PC,

    индексного регистра и данного в команде 16-разрядного смещения d16 или

    32-разрядного базового смещения bd),

    . непосредственная (значение операнда Im дано в команде).

    Форматы команд

    Команды процессора МС68300 могут содержать от одного до пяти слов.

    Любая команда всегда расположена по четному адресу. Формат команды в общем

    виде показан на рисунке 1:

    |Командное слово |

    |(первое слово, определяющее операцию и способ адресации) |

    |Непосредственный операнд |

    |(одно или два слова) |

    |Эффективный адрес источника |

    |(одно или два слова) |

    |Смещение |

    |(одно или два слова) |

    Рисунок 1.

    Система команд CPU32

    Процессор CPU32 выполняет набор из 139 команд, которые реализуют

    следующие группы операций:

    . операции пересылки,

    . арифметические операции,

    . логические операции,

    . операции сдвига,

    . операции сравнения и тестирования,

    . битовые операции,

    . операции управления;

    . операции условной установки байтов.

    Таблица1 - Набор команд процессора CPU32

    |Синтаксис ассемблера|Разрядность |Операция |Адресация |

    |ADD Dn, |B, W, L | + Dn -> |1,(3-9,13) |

    | | | | |

    |ADD , Dn |B, W, L |Dn+ - Dn |(1-14),1 |

    |ADDA , An |W, L | + An -> An |(1-14),2 |

    |ADDI # Im, |B, W, L | + Im -> |12,(1,3-9,13) |

    | | | | |

    |ADDQ # Im, |B, W, L | + Im -> |12,(1-9,13) |

    | | | | |

    |ADDX Dy, Dx |B, W, L |Dx + Dy + X -> Dx |1,1 |

    |ADDX - (Ay),- (Ax) |B, W, L | + + X |5,5 |

    | | |-> | |

    |SUB Dn, |B, W, L | - Dn -> |1,(3-9,13) |

    | | | | |

    |SUB , Dn |B, W, L |Dn+ -> |(1-14),1 |

    |SUBA ,An |W, L |An- -> An |(1-14),2 |

    |SUBI # Im, |B, W, L | - Im -> |12,(1,3-9,13) |

    | | | | |

    |SUBQ # Im, |B, W, L | - Im -> |12,(1-9,13) |

    | | | | |

    |SUBX Dy, Dx |B, W, L |Dx - Dy - X -> |1,1 |

    | | | | |

    |SUBX - (Ay), - (Ax) |B, W, L | - - X |5,5 |

    | | |-> | |

    |NEG |B, W, L |O - -> |(1,3-9,13) |

    |NEGX |B, W, L |O - - X -> |(1,3-9,13) |

    | | | | |

    |ABCD Dy, Dx |W |Dx + Dy + X -> Dx |1,1 |

    |ABCD - (Ay), - (Ax) |W | + + X |5,5 |

    | | |-> | |

    |SBCD Dy, Dx |W |Dx- Dy - X -> Dx |1,1 |

    |SBCD - (Ay), - (Ax) |W | - - X |5,5 |

    | | |-> | |

    |NBCD |W |O - - X -> |(1,3-9,13) |

    | | | | |

    |MULS , Dn |W, L |Dn * -> Dn |(1,3-14),1 |

    |MULS.L , Dh-Dl |L |Dn * -> Dn |(1,3-14),1 |

    |MULU , Dn |W, L |Dn * -> Dn |(1,3-14),1 |

    |MULU.L , Dh-Dl |L |Dl * -> |(1,3-14),1 |

    | | |Dh:Dl | |

    |DIVS , Dn |W, L |Dn / -> Dn |(1,3-14),1 |

    |DIVS.L , Dr:Dq |L |Dr:Dq / -> |(1,3-14),1 |

    | | |Dr:Dq | |

    |DIVSL.L , Dr:Dq |L |Dq / -> |(1,3-14),1 |

    | | |Dr:Dq | |

    |DIVU , Dn |W |Dn / -> Dn |(1,3-14),1 |

    |DIVU.L , Dr:Dq |L |Dr:Dq / -> |(1,3-14),1 |

    | | |Dr:Dq | |

    |DIVUL.L , Dr:Dq |L |Dq / -> |(1,3-14),1 |

    | | |Dr:Dq | |

    |CLR |B,W,L |0 -> |(1,3-9,13) |

    Таблица2 - Команды логических операций

    |Синтаксис |Разрядность |Операции |Адресация |

    |ассемблера | | | |

    |AND , Dn |B, W, L |Dn ^ -> Dn |(1, 3 - 14), 1 |

    |AND Dn, |B, W, L | ^ Dn -> |1, (1,3 - 9,13) |

    | | | | |

    |ANDI # Im, |B, W, L | ^ Im -> |12, (1, 3 - 9,13)|

    | | | | |

    |ANDI # Im, CCR |W |CCR ^ Im -> CCR |12, - |

    |ANDI # Im, SR |W |SR ^ Im -> SR |12, - |

    |OR , Dn |B, W, L |Dn -> Dn |(1, 3 - 14), 1 |

    |OR Dn, |B, W, L | Dn -> |1, (1,3 - 9,13) |

    |ORI # Im, |B, W, L | Im -> |12, (1, 3 - 9,13)|

    |ORI # Im, CCR |W |CCR Im -> CCR |12, - |

    |ORI # Im, SR |W |SR Im -> SR |12, - |

    |EOR Dn, |B, W, L | + Dn -> |1, (1, 3 - 9,13) |

    | | | | |

    |EORI # Im, |B, W, L |dst> + Im -> |12, (1, 3 - 9,13)|

    | | | | |

    |EORI # Im, CCR |W |CCR + Im -> CCR |12, - |

    |EORI # Im, SR |W |SR + Im -> SR |12, - |

    |NOT |B, W, L | -> |(1, 3 - 9.13) |

    Таблица3 - Команды сдвигов

    |Синтаксис |Разрядность |Адресация |

    |ассемблера | | |

    |ASL Dx, Dv |B, W, L |1, 1 |

    |ASL # Ns, Dv |B, W, L |12, 1 |

    |ASL |W |(3 - 9,13) |

    |ASR Dx, Dv |B, W, L |1,1 |

    |ASR # Ns, Dv |B, W, L |12,1 |

    |ASR |W |(3 - 9,13) |

    |LSL Dx, Dv |B, W, L |1,1 |

    |LSL # Ns, Dv |B, W, L |12,1 |

    |LSL |W |(3 - 9,13) |

    |LSR Dx, Dv |B, W, L |1,1 |

    |LSR # Ns, Dv |B, W, L |12,1 |

    |LSR |W |(3 - 9,13) |

    |ROL Dx, Dv |B, W, L |1,1 |

    |ROL # Ns, Dv |B, W, L |12,1 |

    |ROL |W |(3 - 9,13) |

    |ROR Dx, Dv |B, W, L |1,1 |

    |ROR # Ns, Dv |B, W, L |12,1 |

    |ROR |W |(3 - 9,13) |

    |ROXL Dx, Dv |B, W, L |1,1 |

    |ROXL # Ns, Dv |B, W, L |12,1 |

    |ROXL |W |(3 - 9,13) |

    |ROXR Dx, Dv |B, W, L |1,1 |

    |ROXR # Ns, Dv |B, W, L |12,1 |

    |ROXR |W |(3 - 9,13) |

    Таблица4 - Команды сравнения и тестирования.

    |Синтаксис ассемблера |Разрядность |Операции |Адресация |

    |СMP , Dn |B, W, L |Dn - |(1 - 14), 1 |

    |СMP , An |W, L |An - |(1 - 14), 2 |

    |CMPI # Im, |B, W, L | - Im |12, (1, 3 - |

    | | | |11,13,14) |

    |CMPM (Av) +,(Ax) + |B, W, L | - |4,4 |

    |CMP2 , Rn |B, W, L |(Rn)UB |(3,6-11,13,14), |

    | | | |(1,2) |

    |TST |B, W, L | - 0 |(1, 3 – 9,13) |

    |TAS |B | - 0, 1 -> b7|(1, 3 - 14) |

    Таблица 5 - Команды битовых операций.

    |Синтаксис |Разрядность |Операции |Адресация |

    |ассемблера | | | |

    |BTST Dn, |B, L |bn -> Z |1, (1, 3 - 14) |

    |BTST # Nb, |B, L |bn -> Z |12, (1, 3 - 14) |

    |BSET Dn, |B, L |bn -> Z, 1 -> bn |1, (1, 3 - |

    | | | |9,13,14) |

    |BSET # Nb, |B, L |bn -> Z, 1 -> bn |12, (1, 3 - |

    | | | |9,13,14) |

    |BCLR Dn, |B, L |bn -> Z, 0 -> bn |1, (1, 3 - |

    | | | |9,13,14) |

    |BCLR # Nb, |B, L |bn -> Z, 0 -> bn |12, (1, 3 - |

    | | | |9,13,14) |

    |BCHG Dn, |B, L |bn -> Z, bn -> bn|1, (1, 3 - |

    | | | |9,13,14) |

    |BCHG # Nb, |B, L |bn -> Z, bn -> bn|12, (1, 3 - |

    | | | |9,13,14) |

    Таблица 6 - Команды управления и установки байтов.

    |Синтаксис |Операции |Адресация |

    |ассемблера | | |

    |JMP | -> PC |(3, 6 - |

    | | |11,13,14) |

    |JSR |SP - 4 -> SP, PC -> |(3, 6 - |

    | |(SP), -> PC |11,13,14) |

    |RTS |(SP) -> PC, SP + 4 ->| |

    | |SP | |

    |RTR |(SP) -> CCR, SP + Z | |

    | |-> SP, (SP) -> PC, SP| |

    | |+ 4 -> SP | |

    |Scc |Если (сс) |(1, 3 - |

    | |выполняется, то 1 ...|9,13,14) |

    | |1 -> , | |

    | |если (сс) не | |

    | |выполняется, то 0 ...| |

    | |0 -> | |

    Таблица 7 - Изменение признаков после выполнения команд

    |Команды |X |N |Z |V |C |Примечание |

    |ABCD, SBCD, NBCD |+ |? |* |? |+ |X=С - десятичный |

    | | | | | | |перенос |

    |ADD, ADDI, ADDQ, SUB, SUBI, SUBQ, |+ |+ |+ |+ |+ |X=С - десятичный |

    |NEG | | | | | |перенос |

    |ADDX, SUBX, NEGX |+ |+ |* |+ |+ |X=С - десятичный |

    | | | | | | |перенос |

    |MULS, MULU, DIVS, DIVU |- |+ |+ |+ |0 | |

    |MOVE, MOVEQ, AND, ANDI, |- |+ |+ |0 |0 | |

    |OR, ORI, EOR, EORI, NOT, CLR, | | | | | | |

    |EXT, TAS, TST | | | | | | |

    |CMP, CMPI, CMPM |- |+ |+ |+ |+ | |

    |CMP2 |- |? |+ |? |+ | |

    |BTST, BSET, BCLR, BCHG |- |- |+ |- |- |Z = bn (инверсия) |

    |ASL, ASR |+ |+ |- |+ |+ |V = 1 при изменении |

    | | | | | | |знака |

    |LSL, LSR |+ |+ |+ |0 |+ | |

    |ROL, ROR |- |+ |+ |0 |+ | |

    |ROXL, ROXR |+ |+ |+ |0 |+ | |

    |CHK |+ |+ |+ |+ |+ | |

    |MOVE, ANDI, ORI, EORI to CCR или |+ |+ |+ |+ |+ | |

    |SR | | | | | | |

    В общем виде запись типовой двухадресной команды на языке ассемблера

    имеет следующий вид:

    COP.x ,

    где в качестве COP указывается мнемокод соответствующей команды, а вместо x

    ставится символ, определяющий разрядность операндов: B - байт, W - слово, L

    - длинное слово. Если после мнемокода отсутствует символ разрядности, то по

    умолчанию операндом служит слово.

    Операнды условно обозначаются как - источник, - приемник,

    причем в качестве приемника указывается операнд, на месте которого

    помещается результат операции. При записи конкретных команд в качестве

    , указываются символические адреса операндов на языке ассемблера

    Страницы: 1, 2, 3


    Приглашения

    09.12.2013 - 16.12.2013

    Международный конкурс хореографического искусства в рамках Международного фестиваля искусств «РОЖДЕСТВЕНСКАЯ АНДОРРА»

    09.12.2013 - 16.12.2013

    Международный конкурс хорового искусства в АНДОРРЕ «РОЖДЕСТВЕНСКАЯ АНДОРРА»




    Copyright © 2012 г.
    При использовании материалов - ссылка на сайт обязательна.