🗊Презентация Програмна модель процесора архітектури ІА-32

Категория: Технология
Нажмите для полного просмотра!
Програмна модель процесора архітектури ІА-32, слайд №1Програмна модель процесора архітектури ІА-32, слайд №2Програмна модель процесора архітектури ІА-32, слайд №3Програмна модель процесора архітектури ІА-32, слайд №4Програмна модель процесора архітектури ІА-32, слайд №5Програмна модель процесора архітектури ІА-32, слайд №6Програмна модель процесора архітектури ІА-32, слайд №7Програмна модель процесора архітектури ІА-32, слайд №8Програмна модель процесора архітектури ІА-32, слайд №9Програмна модель процесора архітектури ІА-32, слайд №10Програмна модель процесора архітектури ІА-32, слайд №11Програмна модель процесора архітектури ІА-32, слайд №12Програмна модель процесора архітектури ІА-32, слайд №13Програмна модель процесора архітектури ІА-32, слайд №14Програмна модель процесора архітектури ІА-32, слайд №15Програмна модель процесора архітектури ІА-32, слайд №16Програмна модель процесора архітектури ІА-32, слайд №17Програмна модель процесора архітектури ІА-32, слайд №18Програмна модель процесора архітектури ІА-32, слайд №19

Вы можете ознакомиться и скачать презентацию на тему Програмна модель процесора архітектури ІА-32. Доклад-сообщение содержит 19 слайдов. Презентации для любого класса можно скачать бесплатно. Если материал и наш сайт презентаций Mypresentation Вам понравились – поделитесь им с друзьями с помощью социальных кнопок и добавьте в закладки в своем браузере.

Слайды и текст этой презентации


Слайд 1





Програмна модель процесора 
архітектури ІА-32
Описание слайда:
Програмна модель процесора архітектури ІА-32

Слайд 2





Програмна модель мікропроцесора  це незалежна від конструктивної реалізації сукупність його регістрів та оперативна пам'ять до якої мають доступ прикладні програми. 
Програмна модель мікропроцесора  це незалежна від конструктивної реалізації сукупність його регістрів та оперативна пам'ять до якої мають доступ прикладні програми. 
Відповідно включає:
- регістри;
- ділянки памяті (сегменти).
Описание слайда:
Програмна модель мікропроцесора  це незалежна від конструктивної реалізації сукупність його регістрів та оперативна пам'ять до якої мають доступ прикладні програми. Програмна модель мікропроцесора  це незалежна від конструктивної реалізації сукупність його регістрів та оперативна пам'ять до якої мають доступ прикладні програми. Відповідно включає: - регістри; - ділянки памяті (сегменти).

Слайд 3


Програмна модель процесора архітектури ІА-32, слайд №3
Описание слайда:

Слайд 4





Регістр МП - надшвидка оперативна пам'ять  всередині процесора, призначена для зберігання проміжних результатів обчислення,  або розміщення даних   необхідних для роботи процесора. 
Регістр МП - надшвидка оперативна пам'ять  всередині процесора, призначена для зберігання проміжних результатів обчислення,  або розміщення даних   необхідних для роботи процесора. 
Регістри МП можна розділити на дві великі групи:
- користувацькі регістри;
- системні регістри.
Описание слайда:
Регістр МП - надшвидка оперативна пам'ять всередині процесора, призначена для зберігання проміжних результатів обчислення, або розміщення даних необхідних для роботи процесора. Регістр МП - надшвидка оперативна пам'ять всередині процесора, призначена для зберігання проміжних результатів обчислення, або розміщення даних необхідних для роботи процесора. Регістри МП можна розділити на дві великі групи: - користувацькі регістри; - системні регістри.

Слайд 5





Користувацькі регістри
1. Регістри загального призначення(цілочисельні).
2. Сегментні регістри.
3. Регістри стану та управління.
4. Регістри математичного співпроцесора та мультимедійного розширення (ММХ). 
5. Регістри  потокового розширення процесора (SSE)
Описание слайда:
Користувацькі регістри 1. Регістри загального призначення(цілочисельні). 2. Сегментні регістри. 3. Регістри стану та управління. 4. Регістри математичного співпроцесора та мультимедійного розширення (ММХ). 5. Регістри  потокового розширення процесора (SSE)

Слайд 6





Регістри загального призначення (РЗП)
Структура

Кожен з регістрів іменується певною буквою до якої долучаються префікс та суфікс, що уточнюють його розмір.
Префікси назви
R-64 біта (тільки 64-бітна архітектура)
Е-32 біта
Суфікси
Х – не менше 16 біт
Н – старший байт 16 бітного регістра   (X)
L –молодший байт 16 бітного регістра (X)
Описание слайда:
Регістри загального призначення (РЗП) Структура Кожен з регістрів іменується певною буквою до якої долучаються префікс та суфікс, що уточнюють його розмір. Префікси назви R-64 біта (тільки 64-бітна архітектура) Е-32 біта Суфікси Х – не менше 16 біт Н – старший байт 16 бітного регістра (X) L –молодший байт 16 бітного регістра (X)

Слайд 7





Цілочисельні регістри
EAX - акумулятор, операнд - джерело або приймач результату (багато команд МП обумовлюють розміщення операнду в даному регістрі) ; 
EBX - покажчик на дані в сегменті DS (регіст бази) (base); 
ECX - лічильник для ланцюгових команд (наприклад, MOVS) і циклічних (із префіксом REP і т.п.) інструкцій (counter); 
EDX - адреса порту введення-виводу для інструкцій IN/INS, OUT/OUTS (data); 
ESI - покажчик на операнд-джерело у сегменті DS для ланцюгових інструкцій (source) ; 
EDI - покажчик на операнд-джерело у сегменті ES для ланцюгових інструкцій (destination); 
ESP - містить покажчик на вершину стека і його не варто використовувати для інших цілей (ctec point). 
EBP - покажчик на дані в сегменті SS (регістр кадра стеку) (base point). 
В 64 бітному режимі доступні додаткові цілочисельні регістри R8-R15
Описание слайда:
Цілочисельні регістри EAX - акумулятор, операнд - джерело або приймач результату (багато команд МП обумовлюють розміщення операнду в даному регістрі) ; EBX - покажчик на дані в сегменті DS (регіст бази) (base); ECX - лічильник для ланцюгових команд (наприклад, MOVS) і циклічних (із префіксом REP і т.п.) інструкцій (counter); EDX - адреса порту введення-виводу для інструкцій IN/INS, OUT/OUTS (data); ESI - покажчик на операнд-джерело у сегменті DS для ланцюгових інструкцій (source) ; EDI - покажчик на операнд-джерело у сегменті ES для ланцюгових інструкцій (destination); ESP - містить покажчик на вершину стека і його не варто використовувати для інших цілей (ctec point). EBP - покажчик на дані в сегменті SS (регістр кадра стеку) (base point). В 64 бітному режимі доступні додаткові цілочисельні регістри R8-R15

Слайд 8





Сегментні регістри
CS сегментний регістр коду. Він містить адресу сегмента з машинними командами, до якого має доступ мікропроцесор (тобто ці команди завантажуються в конвеєр мікропроцесора).

DS - сегментний регістр даних, що зберігає адресу сегмента даних поточної програми.
SS Сегмент стека. Цей сегмент являє собою область пам'яті, звану стеком.
Роботу зі стеком мікропроцесор організує за наступним принципом: останній записаний в цю область елемент вибирається першим.
ES, GS, FS Додаткові сегменти даних. 
Якщо програмі недостатньо одного сегмента даних, то вона має можливість використовувати ще три додаткових сегмента даних. Але на відміну від основного сегмента даних, адреса якого міститься в сегментному регістрі DS, при використанні додаткових сегментів даних їх адреси потрібно вказувати явно за допомогою спеціальних префіксів перевизначення сегментів у команді.
Описание слайда:
Сегментні регістри CS сегментний регістр коду. Він містить адресу сегмента з машинними командами, до якого має доступ мікропроцесор (тобто ці команди завантажуються в конвеєр мікропроцесора). DS - сегментний регістр даних, що зберігає адресу сегмента даних поточної програми. SS Сегмент стека. Цей сегмент являє собою область пам'яті, звану стеком. Роботу зі стеком мікропроцесор організує за наступним принципом: останній записаний в цю область елемент вибирається першим. ES, GS, FS Додаткові сегменти даних. Якщо програмі недостатньо одного сегмента даних, то вона має можливість використовувати ще три додаткових сегмента даних. Але на відміну від основного сегмента даних, адреса якого міститься в сегментному регістрі DS, при використанні додаткових сегментів даних їх адреси потрібно вказувати явно за допомогою спеціальних префіксів перевизначення сегментів у команді.

Слайд 9





Регістри стану та керування
EIP Покажчик команд містить зсув (відносна адреса) наступної команди, що підлягає виконанню. Відносна адреса відраховується від початку (або базової адреси) сегмента задачі, що виконується. Покажчик команд безпосередньо недоступний програмістові, але він керується явно командами керування потоком, перериваннями і виключеннями (JMP, CALL, RET, IRET, команди умовного переходу). 
EFLAGS Регістр системних прапорів містить групу прапорів стану, керування і системних прапорів. Значущими є окремі біти регістру які мають індивідуальні назви. Невизначені біти зарезервовані, тобто на даний момент вони не мають значення.
 Далі термін "установлений" означає значення 1, а термін "скинуте" - значення 0
Описание слайда:
Регістри стану та керування EIP Покажчик команд містить зсув (відносна адреса) наступної команди, що підлягає виконанню. Відносна адреса відраховується від початку (або базової адреси) сегмента задачі, що виконується. Покажчик команд безпосередньо недоступний програмістові, але він керується явно командами керування потоком, перериваннями і виключеннями (JMP, CALL, RET, IRET, команди умовного переходу). EFLAGS Регістр системних прапорів містить групу прапорів стану, керування і системних прапорів. Значущими є окремі біти регістру які мають індивідуальні назви. Невизначені біти зарезервовані, тобто на даний момент вони не мають значення. Далі термін "установлений" означає значення 1, а термін "скинуте" - значення 0

Слайд 10





Регістр системних прапорів
CF - прапор переносу (Carry Flag). Установлено, якщо операція привела до переносу зі старшого біта при додаванні або до займу в старший біт при відніманні, інакше скинутий. Для беззнакових операцій прапор сигналізує про переповнення. 
PF - прапор парності (Parity Flag). Установлено, якщо молодші вісім біт операнда містять парне число одиниць (перевірка на парність) інакше скинутий.. 
AF - прапор допоміжного переносу (Adjust Flag). Використовується для спрощення додавання і вирахування упакованных двійково-десяткових чисел. 
ZF - прапор нуля (Zero Flag). Установлено, якщо всі біти результату дорівнюють нулеві, інакше скинутий. 

SF - прапор знака (Sign Flag). Установлено, якщо встановлено старший біт результату, інакше він скинутий. 
OF - прапор переповнення (Overflow Flag). Прапор установлений, якщо операція привела до переносу (зайому) у знаковий (самий старший) біт результату, але не привела до переносу (зайому) із самого старшого біта, або навпаки. Для операцій над числами зі знаком сигналізує про переповнення. 
DF - прапор напрямку (Direction Flag) керує поводженням ланцюгових інструкцій (MOVS, CMPS, SCAS, LODS, STOS).
Описание слайда:
Регістр системних прапорів CF - прапор переносу (Carry Flag). Установлено, якщо операція привела до переносу зі старшого біта при додаванні або до займу в старший біт при відніманні, інакше скинутий. Для беззнакових операцій прапор сигналізує про переповнення. PF - прапор парності (Parity Flag). Установлено, якщо молодші вісім біт операнда містять парне число одиниць (перевірка на парність) інакше скинутий.. AF - прапор допоміжного переносу (Adjust Flag). Використовується для спрощення додавання і вирахування упакованных двійково-десяткових чисел. ZF - прапор нуля (Zero Flag). Установлено, якщо всі біти результату дорівнюють нулеві, інакше скинутий. SF - прапор знака (Sign Flag). Установлено, якщо встановлено старший біт результату, інакше він скинутий. OF - прапор переповнення (Overflow Flag). Прапор установлений, якщо операція привела до переносу (зайому) у знаковий (самий старший) біт результату, але не привела до переносу (зайому) із самого старшого біта, або навпаки. Для операцій над числами зі знаком сигналізує про переповнення. DF - прапор напрямку (Direction Flag) керує поводженням ланцюгових інструкцій (MOVS, CMPS, SCAS, LODS, STOS).

Слайд 11





Режими роботи процесора
Описание слайда:
Режими роботи процесора

Слайд 12





Реальний режим (Real Mode) У реальному режимі мікропроцесор працює як дуже швидкий 8086 з можливістю використання 32-бітних розширень. 
Реальний режим (Real Mode) У реальному режимі мікропроцесор працює як дуже швидкий 8086 з можливістю використання 32-бітних розширень. 
Режим виртуального 8086 (Virtual 8086 Mode) Для деяких задач може емулювання керування пам'яттю як у процесора 8086. При цьому задачі віртуального МП 8086 ізольовані і захищені, як від один одного, так і від звичайних задач захищеного режиму. 
Захищений режим (Protection Mode) -основний режим роботи мікропроцесора, який підтримує  виртуальний адресний простір процесів, захист памяті та багатозадачність.
Long Compatibility mode режим роботи 64 бітних процесорів повністю сумісний із захищеним режимом.
Long 64 bit mode режим роботи 64 бітних процесорів з доступними розширеннями архітектури AMD64 (EM64T). Тільки 64-бітні операційні системи.
Описание слайда:
Реальний режим (Real Mode) У реальному режимі мікропроцесор працює як дуже швидкий 8086 з можливістю використання 32-бітних розширень. Реальний режим (Real Mode) У реальному режимі мікропроцесор працює як дуже швидкий 8086 з можливістю використання 32-бітних розширень. Режим виртуального 8086 (Virtual 8086 Mode) Для деяких задач може емулювання керування пам'яттю як у процесора 8086. При цьому задачі віртуального МП 8086 ізольовані і захищені, як від один одного, так і від звичайних задач захищеного режиму. Захищений режим (Protection Mode) -основний режим роботи мікропроцесора, який підтримує виртуальний адресний простір процесів, захист памяті та багатозадачність. Long Compatibility mode режим роботи 64 бітних процесорів повністю сумісний із захищеним режимом. Long 64 bit mode режим роботи 64 бітних процесорів з доступними розширеннями архітектури AMD64 (EM64T). Тільки 64-бітні операційні системи.

Слайд 13





Моделі памяті
Модель пам'яті – способи розміщення сегментів програми та їх розмір в оперативній пам'яті.
В 16- бітному режимі:
Tiny (крихітна) Усі чотири сегментних регістри (CS, DS, SS і ES) установлюються на той самий адрес, що дає загальний розмір коду, даних і стека, рівний 64К. Використовуються винятково ближні покажчики (16 біт). Програми з крихітною моделлю пам'яті можна перетворити до формату.COM 
 Small (мала) сегменти коду і даних розташований окремо і не перекриваються, що дозволяє мати 64К коду програми і 64К даних і стека. Використовуються тільки ближні покажчики.
 Medium (середня) Для коду, але не для даних використовуються далекі покажчики (32- біт). У результаті дані плюс стек обмежений розміром 64К, а код може займати до 1Мб.
 Compact (компактна) Ситуація, протилежна щодо моделі Medium: дальні покажчики використовуються для даних, але не для коду. Код тут обмежений 64К, а граничний розмір даних – 1 Мб.
 Large (велика) Далекі покажчики використовуються як для коду, так і для даних, що дає граничний розмір 1 Мб для обох.
Описание слайда:
Моделі памяті Модель пам'яті – способи розміщення сегментів програми та їх розмір в оперативній пам'яті. В 16- бітному режимі: Tiny (крихітна) Усі чотири сегментних регістри (CS, DS, SS і ES) установлюються на той самий адрес, що дає загальний розмір коду, даних і стека, рівний 64К. Використовуються винятково ближні покажчики (16 біт). Програми з крихітною моделлю пам'яті можна перетворити до формату.COM Small (мала) сегменти коду і даних розташований окремо і не перекриваються, що дозволяє мати 64К коду програми і 64К даних і стека. Використовуються тільки ближні покажчики. Medium (середня) Для коду, але не для даних використовуються далекі покажчики (32- біт). У результаті дані плюс стек обмежений розміром 64К, а код може займати до 1Мб. Compact (компактна) Ситуація, протилежна щодо моделі Medium: дальні покажчики використовуються для даних, але не для коду. Код тут обмежений 64К, а граничний розмір даних – 1 Мб. Large (велика) Далекі покажчики використовуються як для коду, так і для даних, що дає граничний розмір 1 Мб для обох.

Слайд 14





В 32 бітному режимі:
Описание слайда:
В 32 бітному режимі:

Слайд 15





Структура програми 
Каркас програми для Windows
.386   		;директива на використання команд процесора 386
.MODEL flat, STDCALL 	 ; модель памяті та правило виклику процедур
OPTIONS CASEMAP:NONE      ; чутливість до регістру
.DATA  	          ; директива що задає секцію обявлення ініціалізованих змінних
.DATA? 		; дані без ініціалізації
.CONST 		; задання констант
.CODE		; код програми 
start:
   <Ваш код>   
......
end <мітка>  		;start
 
 Компіляція  (compil.bat) 
1. C:\masm32\BIN\ML.EXE  /c  /coff  lab01.asm
;                  без лінка; формат об’єктного файлу
lab01.asm    lab01.obj
2. C:\masm32\BIN\LINK.EXE   /subsystem:console  lab01.obj
;                             		 windows
lab01obj lab01.exe
Описание слайда:
Структура програми Каркас програми для Windows .386 ;директива на використання команд процесора 386 .MODEL flat, STDCALL ; модель памяті та правило виклику процедур OPTIONS CASEMAP:NONE ; чутливість до регістру .DATA ; директива що задає секцію обявлення ініціалізованих змінних .DATA? ; дані без ініціалізації .CONST ; задання констант .CODE ; код програми start: <Ваш код> ...... end <мітка>   ;start    Компіляція (compil.bat) 1. C:\masm32\BIN\ML.EXE /c /coff lab01.asm ; без лінка; формат об’єктного файлу lab01.asm  lab01.obj 2. C:\masm32\BIN\LINK.EXE /subsystem:console lab01.obj ; windows lab01obj lab01.exe

Слайд 16





Синтаксис мови 
Асемблер визначає синтаксичні конструкції  чотирьох типів:
команди, або інструкції, що представляють собою символічні аналоги  машинних команд. У процесі трансляції інструкції ассемблера перетворюються у відповідні команди системи команд мікропроцесора;
макрокоманди — оформлювані певним чином пропозиції програми, що заміщаються під час трансляції іншими пропозиціями; (Починаються з .)
директиви, що є вказівкою трансляторові асемблера на виконання  деяких дій. У директив немає аналогів у машинному представленні;
рядки коментарів, що містять будь-які символи, у тому числі і букви  російського алфавіту. Коментарі ігноруються транслятором. Починається з ;
Описание слайда:
Синтаксис мови Асемблер визначає синтаксичні конструкції чотирьох типів: команди, або інструкції, що представляють собою символічні аналоги машинних команд. У процесі трансляції інструкції ассемблера перетворюються у відповідні команди системи команд мікропроцесора; макрокоманди — оформлювані певним чином пропозиції програми, що заміщаються під час трансляції іншими пропозиціями; (Починаються з .) директиви, що є вказівкою трансляторові асемблера на виконання деяких дій. У директив немає аналогів у машинному представленні; рядки коментарів, що містять будь-які символи, у тому числі і букви російського алфавіту. Коментарі ігноруються транслятором. Починається з ;

Слайд 17





Загальний формат команди:
[мітка:][префікс] КОП [операнд 1,] [операнд 2]
 [префікс] – задає специфічний спосіб виконання команди
 Приклад: 
MI01:  MOV EAX, 120
Операнди – частина макрокоманди чи директиви над якими виконуються дії.
В залежності від розміщення операндів Assembler розрізняє їхні наступні типи:

регістрові операнди – обробляються дані, які містяться в регістрі.
безпосередні операнди – задають розміщення операнда у вигляді його адреси в оперативній пам’яті  
переміщувальні операнди  - це є символьні імена, які задають адреси розміщення у пам’яті команд чи інструкцій
базові та індексні операнди  - використовуються для розміщення індексної адресації
структурні операнди – це є операнди структурного запису
неявні операнди - команда визначає сама
лічильник адреси — специфічний вид операнда, позначається знаком $. транслятор замінює його поточним значення лічильника адреси.
Описание слайда:
Загальний формат команди: [мітка:][префікс] КОП [операнд 1,] [операнд 2]  [префікс] – задає специфічний спосіб виконання команди  Приклад: MI01: MOV EAX, 120 Операнди – частина макрокоманди чи директиви над якими виконуються дії. В залежності від розміщення операндів Assembler розрізняє їхні наступні типи: регістрові операнди – обробляються дані, які містяться в регістрі. безпосередні операнди – задають розміщення операнда у вигляді його адреси в оперативній пам’яті переміщувальні операнди - це є символьні імена, які задають адреси розміщення у пам’яті команд чи інструкцій базові та індексні операнди - використовуються для розміщення індексної адресації структурні операнди – це є операнди структурного запису неявні операнди - команда визначає сама лічильник адреси — специфічний вид операнда, позначається знаком $. транслятор замінює його поточним значення лічильника адреси.

Слайд 18





Цілі типи даних
Оголошення:	 [ім’я ]  Dn  значення
Dn –  
DB – BYTE 	8
DW – WORD	16 
DD – DWORD	32
DQ – QWORD	64
DT – TBYTE	80
Приклади:
A1	DB	?
Str1	DB	‘ACCEMLER’
A2	DB	32
A3	DB	20H
A4	DW	01FFH
A5	DW	0001110B
A6	DD	10,11,12,13,14,15
Str2	DB	‘MY’,1,’DOC’
STR1 BYTE	 "THIS FIRST STRING1",0
STR2 BYTE 	20 DUP (0),0
STR3 BYTE 	"0123456789",0
ENDL BYTE 	13,10,0
Описание слайда:
Цілі типи даних Оголошення: [ім’я ] Dn значення Dn – DB – BYTE 8 DW – WORD 16 DD – DWORD 32 DQ – QWORD 64 DT – TBYTE 80 Приклади: A1 DB ? Str1 DB ‘ACCEMLER’ A2 DB 32 A3 DB 20H A4 DW 01FFH A5 DW 0001110B A6 DD 10,11,12,13,14,15 Str2 DB ‘MY’,1,’DOC’ STR1 BYTE "THIS FIRST STRING1",0 STR2 BYTE 20 DUP (0),0 STR3 BYTE "0123456789",0 ENDL BYTE 13,10,0

Слайд 19





Фундаментальні типи
Описание слайда:
Фундаментальні типи



Похожие презентации
Mypresentation.ru
Загрузить презентацию