IA-32 (скорочення від «Intel Architecture, 32-bit», інколи також відомий як i386 — 32-бітний варіант набору процесорних інструкцій x86, спроектований компанією Intel і вперше реалізований у вигляді мікропроцесора Intel 80386 1985 року. IA-32 є першою «інкарнацією» x86, що підтримує «чисте» 32-розрядне програмування; як результат, термін «IA-32» може застосовуватися до всіх версій x86, що підтримують 32-розрядні обчислення.
У опціях багатьох компіляторів мов програмування IA-32 досі інколи позначається як «архітектура i386». У деяких інших контекстах для IA-32 використовуються синоніми i486, i586 або i686 щодо надмножин, реалізованих у відповідних мікроархітектурах (486, P5, P6), що мають доповнення до базової 32-розрядної архітектури IA-32 (такі, як підтримка рухомої коми або MMX).
Історично фірма Intel була найбільшим виробником процесорів IA-32; другим за обсягом виробництва була AMD. У 1990-х роках такі процесори виробляли також VIA Technologies, Transmeta, та деякі інші фірми. У 21-му столітті Intel деякий час продовжувала виробництво процесорів IA-32 у рамках мікроконтролерної платформи Intel Quark. Втім, у 2010-х роках більшість виробників (включно з Intel) перейшли до виробництва майже винятково процесорів 64-розрядної архітектури x86-64.
Станом на 2018 рік версії операційних систем для IA-32 все ще існують (наприклад, Microsoft Windows або Ubuntu Linux).
Архітектурні особливості
Основною визначною характеристикою архітектури IA-32 є наявність 32-розрядних регістрів загального призначення (таких, як EAX або EBX), 32-розрядні арифметичні та логічні операції 32-розрядні зміщення у сегменті (у захищеному або «нереальному» режимі роботи процесора), а також трансляція сегментованих адрес у 32-розрядні лінійні адреси.
Проектувальники i386, користуючись нагодою, імплементували також і інші корисні нововведення, зокрема:
- Узагальнені режими адресування: будь-який регістр загального призначення може використовуватися як базовий, і будь-який крім ESP може бути індексним регістром при зверненні до пам'яті. Значення індексного регістру можна помножити на 1, 2, 4 або 8 перед додаванням до базового регістра (і, опційно, зміщення (англ. displacement)).
- Додаткові сегментні регістри (FS і GS).
- Збільшений адресний простір для віртуальних адрес (48 біт, що отримуються складанням 16-розрядного номера сегмента з 32-розрядним зміщенням). Після обчислення сегментної адреси вона відображується на 32-розрядну лінійну.
- Механізм підкачування сторінок з 32-розрядними або 36-розрядними (у пізніших процесорах) фізичними адресами пам'яті.
Режими роботи
Режим роботи | Операційна система | Тип коду, що може запускатися | Розмір адреси (за замовчуванням) | Розмір операндів (за замовчуванням) | Типова ширина регістрів процесора загального призначення |
---|---|---|---|---|---|
Захищений | 32-розрядна ОС або завантажник | 32-розрядний код | 32 біт | 32 біт | 32 біт |
16-розрядна ОС захищеного режиму або завантажник, або 32-розрядний завантажник | 16-розрядний код захищеного режиму | 16 біт | 16 біт | 16 або 32 біт | |
[en] | 16- або 32-розрядна ОС захищеного режиму | 16-розрядний код реального режиму | 16 біт | 16 біт | 16 або 32 біт |
16-розрядна ОС реального режиму або завантажник, або 32-розрядний завантажник | 16-розрядний код реального режиму | 16 біт | 16 біт | 16 або 32 біт |
Див. також
Джерела
- . BSD General Commands Manual. Apple. 19 грудня 2008. Архів оригіналу за 2 червня 2012. Процитовано 3 серпня 2013.
Thin Universal binaries to the specified architecture [...] should be specified as "i386", "x86_64", etc.
- Additional Predefined Macros. intel.com (англ.). Intel. Процитовано 31 серпня 2013.
- Kemp, Steve. . Debian Administration. Архів оригіналу за 16 вересня 2013. Процитовано 19 січня 2020.
- (англ.). Intel Corporation. September 2014. с. 31. Архів оригіналу за 26 січня 2012. Процитовано 19 січня 2020.
The Intel386 processor was the first 32-bit processor in the IA-32 architecture family. It introduced 32-bit registers for use both to hold operands and for addressing.
- Green, Ronald W. (5 травня 2009). . software.intel.com. Intel. Архів оригіналу за 19 грудня 2014. Процитовано 19 грудня 2014.
- . Ubuntu Help. Canonical. Архів оригіналу за 5 лютого 2020. Процитовано 31 серпня 2013.
- . www.microsoft.com (англ.). Архів оригіналу за 1 травня 2018. Процитовано 20 серпня 2018.
- . www.ubuntu.com (англ.). Canonical. Архів оригіналу за 20 серпня 2018. Процитовано 20 серпня 2018.
Вікіпедія, Українська, Україна, книга, книги, бібліотека, стаття, читати, завантажити, безкоштовно, безкоштовно завантажити, mp3, відео, mp4, 3gp, jpg, jpeg, gif, png, малюнок, музика, пісня, фільм, книга, гра, ігри, мобільний, телефон, android, ios, apple, мобільний телефон, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Інтернет
IA 32 skorochennya vid Intel Architecture 32 bit inkoli takozh vidomij yak i386 32 bitnij variant naboru procesornih instrukcij x86 sproektovanij kompaniyeyu Intel i vpershe realizovanij u viglyadi mikroprocesora Intel 80386 1985 roku IA 32 ye pershoyu inkarnaciyeyu x86 sho pidtrimuye chiste 32 rozryadne programuvannya yak rezultat termin IA 32 mozhe zastosovuvatisya do vsih versij x86 sho pidtrimuyut 32 rozryadni obchislennya U opciyah bagatoh kompilyatoriv mov programuvannya IA 32 dosi inkoli poznachayetsya yak arhitektura i386 U deyakih inshih kontekstah dlya IA 32 vikoristovuyutsya sinonimi i486 i586 abo i686 shodo nadmnozhin realizovanih u vidpovidnih mikroarhitekturah 486 P5 P6 sho mayut dopovnennya do bazovoyi 32 rozryadnoyi arhitekturi IA 32 taki yak pidtrimka ruhomoyi komi abo MMX Istorichno firma Intel bula najbilshim virobnikom procesoriv IA 32 drugim za obsyagom virobnictva bula AMD U 1990 h rokah taki procesori viroblyali takozh VIA Technologies Transmeta ta deyaki inshi firmi U 21 mu stolitti Intel deyakij chas prodovzhuvala virobnictvo procesoriv IA 32 u ramkah mikrokontrolernoyi platformi Intel Quark Vtim u 2010 h rokah bilshist virobnikiv vklyuchno z Intel perejshli do virobnictva majzhe vinyatkovo procesoriv 64 rozryadnoyi arhitekturi x86 64 Stanom na 2018 rik versiyi operacijnih sistem dlya IA 32 vse she isnuyut napriklad Microsoft Windows abo Ubuntu Linux Arhitekturni osoblivostiOsnovnoyu viznachnoyu harakteristikoyu arhitekturi IA 32 ye nayavnist 32 rozryadnih registriv zagalnogo priznachennya takih yak EAX abo EBX 32 rozryadni arifmetichni ta logichni operaciyi 32 rozryadni zmishennya u segmenti u zahishenomu abo nerealnomu rezhimi roboti procesora a takozh translyaciya segmentovanih adres u 32 rozryadni linijni adresi Proektuvalniki i386 koristuyuchis nagodoyu implementuvali takozh i inshi korisni novovvedennya zokrema Uzagalneni rezhimi adresuvannya bud yakij registr zagalnogo priznachennya mozhe vikoristovuvatisya yak bazovij i bud yakij krim ESP mozhe buti indeksnim registrom pri zvernenni do pam yati Znachennya indeksnogo registru mozhna pomnozhiti na 1 2 4 abo 8 pered dodavannyam do bazovogo registra i opcijno zmishennya angl displacement Dodatkovi segmentni registri FS i GS Zbilshenij adresnij prostir dlya virtualnih adres 48 bit sho otrimuyutsya skladannyam 16 rozryadnogo nomera segmenta z 32 rozryadnim zmishennyam Pislya obchislennya segmentnoyi adresi vona vidobrazhuyetsya na 32 rozryadnu linijnu Mehanizm pidkachuvannya storinok z 32 rozryadnimi abo 36 rozryadnimi u piznishih procesorah fizichnimi adresami pam yati Rezhimi robotiRezhim roboti Operacijna sistema Tip kodu sho mozhe zapuskatisya Rozmir adresi za zamovchuvannyam Rozmir operandiv za zamovchuvannyam Tipova shirina registriv procesora zagalnogo priznachennya Zahishenij 32 rozryadna OS abo zavantazhnik 32 rozryadnij kod 32 bit 32 bit 32 bit 16 rozryadna OS zahishenogo rezhimu abo zavantazhnik abo 32 rozryadnij zavantazhnik 16 rozryadnij kod zahishenogo rezhimu 16 bit 16 bit 16 abo 32 bit en 16 abo 32 rozryadna OS zahishenogo rezhimu 16 rozryadnij kod realnogo rezhimu 16 bit 16 bit 16 abo 32 bit 16 rozryadna OS realnogo rezhimu abo zavantazhnik abo 32 rozryadnij zavantazhnik 16 rozryadnij kod realnogo rezhimu 16 bit 16 bit 16 abo 32 bitDiv takozhIA 64Dzherela BSD General Commands Manual Apple 19 grudnya 2008 Arhiv originalu za 2 chervnya 2012 Procitovano 3 serpnya 2013 Thin Universal binaries to the specified architecture should be specified as i386 x86 64 etc Additional Predefined Macros intel com angl Intel Procitovano 31 serpnya 2013 Kemp Steve Debian Administration Arhiv originalu za 16 veresnya 2013 Procitovano 19 sichnya 2020 angl Intel Corporation September 2014 s 31 Arhiv originalu za 26 sichnya 2012 Procitovano 19 sichnya 2020 The Intel386 processor was the first 32 bit processor in the IA 32 architecture family It introduced 32 bit registers for use both to hold operands and for addressing Green Ronald W 5 travnya 2009 software intel com Intel Arhiv originalu za 19 grudnya 2014 Procitovano 19 grudnya 2014 Ubuntu Help Canonical Arhiv originalu za 5 lyutogo 2020 Procitovano 31 serpnya 2013 www microsoft com angl Arhiv originalu za 1 travnya 2018 Procitovano 20 serpnya 2018 www ubuntu com angl Canonical Arhiv originalu za 20 serpnya 2018 Procitovano 20 serpnya 2018