Impulzus

 
A Budapesti Műszaki és Gazdaságtudományi Egyetem Villamosmérnöki és Informatikai Kar Hallgatói Képviseletének lapja
Random cikkajánló

FeCat

Egyetemi nagyszótár

Törölve, tandíjat befizette, szigorlat, kollokvium, nem tetszik az arca stb.

Erdélyi Tamás

10 éves a vírus

Kovács Csaba Tamás (Tsaby)

Kollégiumi Küldöttgyűlés – 2002. május 9.

2002. május 9.

Kórus Est

Ismét itt az idő, válasszatok!

Fontos tehát, hogy a Hallgatói Képviselet időben, és megfelelően fel tudjon állni, meg tudja kezdeni működését. Fontos, hogy ebből ti is kivegyétek a magatok részét, azaz gyertek el szavazni, döntsetek arról, hogy ki harcolhat majd egy évig értetek.

Medveczki Gábor (medu)

A macska

MC68000

Tavaly volt húsz éves a Motorola MC68000-es. Bár a Villanykarra járók közül is csak kevesen ismerik (sokaknak a Motoroláról csak a mobiltelefon jut az eszébe), mégis érdemes megemlékezni erről a remekműről. Ez a processzor működik például az Amigákban, Macintoshokban, Atarikban, de még manapság is beépítik beágyazott rendszerekbe.

1979-ben jelent meg, alig egy évvel később, mint riválisa, az i8086. Tervezőmérnökei nem zsugoriskodtak a tokozással, szép nagy, 64 lábú DIP tokba helyezték a 68000 darab tranzisztort tartalmazó lapkát. Ez lehetővé tette, hogy – akkoriban egyedülálló módon – külön cím- és adatbusszal rendelkezzen (bár ez növelte az árát is).

A processzor maga 16 bites, azonban a szorzáson és az osztáson kívül minden műveletet képes 32 biten végezni. Ezenfelül biteken, 4 bites BCD számokon, byte-okon és 16 bites word-ökön tud manipulálni.

A tervezők a regiszterekkel sem fukarkodtak: 8 darab adat-, 8 darab cím-, egy 16 bites flag- és egy 32 bites programszámláló-regisztere van (ez utóbbi csak az alsó 24 bitet használja, de így is 16 Mbyte megcímzésére alkalmas!). A flagregiszter a hagyományos N (negative), Z (zero),
C (carry) és V (overflow) flageken kívül tartalmaz egy X (extended, hosszú számok összeadásánál jön jól), egy T (trace, nyomkövetés) és egy S (supervisor, ez jelzi, hogy user vagy supervisor módban fut a processzor) flaget. Itt foglal helyet még az interrupt maszk is, amelynek segítségével a processzor 8 interrupt szintet különböztet meg.

A megszokott címzési módokon kívül lehetőségünk van programszámláló-relatív, posztinkrementáló és predekrementáló címzésre. Az előbbi relokálható programok írásakor hasznos, az utóbbiak pedig stack- és sztringműveletekhez alkalmasak.

Az MC68000 támogatja a multitaszkos operációs rendszereket. User/supervisor működési modellel, trapekkel (pl. érvénytelen utasítás) valamint "test and set" (TAS) szemaforkezelő utasítással.

A magasszintű programnyelvek is támogatást kaptak. A veremben helyet lehet foglalni lokális változóknak (LINK, UNLK) és egyetlen utasítással (Scc, ahol cc a feltétel) logikai értéket állíthatunk be egy regiszternek.

Végezetül lássuk, mennyivel jobb az akkori riválisnál, az i8086-nál! Kétszer annyi, kétszer akkora egyenrangú regiszter, bitmanipuláló utasítások, feltételes szubrutinhívás, hosszú egészek, multitaszk és magas szintű nyelvek támogatása, 8 szintű interrupt rendszer, 16-szor akkora címtér szegmensek nélkül. Aztán olyan apróságok, hogy: a flagek egyértelműen állnak be; a túlcsordulást osztásnál is az overflow bit jelzi, nem trap stb. Lehetne még folytatni.

Hogy ennek ellenére miért nem ez a processzorcsalád terjedt el jobban? Ki tudja. Biztosan rossz volt a marketing...

És még valami: itt az egyetemen csak annyit mondanak róla, hogy 1979-ben készült. Szomorú.

M