b'\n_START_ARTICLE_\nIntel 8080\n_START_PARAGRAPH_\nIntel 8080 yra Intel gamintas a\xc5\xa1tuoni\xc5\xb3 bit\xc5\xb3 mikroprocesorius. \xc5\xa0is procesorius pasirod\xc4\x97 1974 m ir neretai laikomas pirmuoju praktiniam pritaikymui i\xc5\xa1 ties\xc5\xb3 tinkamu \xc5\xa1io tipo prietaisu. Jis buvo programi\xc5\xa1kai suderinamas su anks\xc4\x8diau gamintu Intel 8008, kuris nepasiteisino, nes reikalavo pernelyg daug papildom\xc5\xb3 mikroschem\xc5\xb3 savo darbui palaikyti. Intel 8080 tur\xc4\x97jo apie 6000 tranzistori\xc5\xb3._NEWLINE_Tokius pat komand\xc5\xb3 sistem\xc4\x85 bei kontakt\xc5\xb3 i\xc5\xa1d\xc4\x97stym\xc4\x85 turin\xc4\x8dius analogus gamino AMD, Mitsubishi, National Semiconductor, NEC, Siemens, ir Texas Instruments. Taryb\xc5\xb3 S\xc4\x85jungoje gaminami analogai buvo vadinami KP580\xd0\x98K80 (v\xc4\x97liau \xd0\x9a\xd0\xa0580\xd0\x92\xd0\x9c80\xd0\x90).\n_START_SECTION_\nRegistrai\n_START_PARAGRAPH_\nProcesorius tur\xc4\x97jo septynis 8 bit\xc5\xb3 registrus, i\xc5\xa1 kuri\xc5\xb3 \xc5\xa1e\xc5\xa1i gal\xc4\x97jo b\xc5\xabti kombinuojami \xc4\xaf 16 bit\xc5\xb3 poras (BC, DE ir HL). Jis taip pat tur\xc4\x97jo 8 bit\xc5\xb3 akumuliatori\xc5\xb3, 16 bit\xc5\xb3 steko rodykl\xc4\x99 \xc4\xaf atmint\xc4\xaf (atsisakant 8008 buvusios vidin\xc4\x97s steko atminties) ir 16 bit\xc5\xb3 programos skaitliuk\xc4\x85. Su 16 bit\xc5\xb3 buvo galima pasiekti 65536 atminties l\xc4\x85steles (64 kilobaitus). Procesoriaus pasirodymo metu tiek adresuojamos atminties apimties pakako.\n_START_SECTION_\nKomandos\n_START_PARAGRAPH_\nDauguma 8 bit\xc5\xb3 operacij\xc5\xb3 buvo galimos tarp akumuliatoriaus ir arba vieno i\xc5\xa1 kit\xc5\xb3 registr\xc5\xb3, arba atminties l\xc4\x85stel\xc4\x97s, indeksuojamos registr\xc5\xb3 pora HL. Duomen\xc5\xb3 persiuntimas buvo galimas tarp bet kuri\xc5\xb3 dviej\xc5\xb3 registr\xc5\xb3 arba registro ir min\xc4\x97tosios atminties l\xc4\x85stel\xc4\x97s._NEWLINE_Visos procesoriaus komandos buvo koduojamos vienu baitu, bet kai kuriose j\xc5\xb3 po \xc5\xa1io baito sekdavo vienas ar du baitai duomen\xc5\xb3, dviej\xc5\xb3 bait\xc5\xb3 adresas arba vieno baito porto numeris. Visos duomen\xc5\xb3 persiuntimo tarp registr\xc5\xb3 komandos buvo koduojamos i\xc5\xa1imtinai vienu baitu, tuo u\xc5\xbeimdamos apie ketvirt\xc4\xaf visos komand\xc5\xb3 sistemos. Procesorius tur\xc4\x97jo 8 komandas paprogramei fiksuotu adresu i\xc5\xa1kviesti (RST). Jos buvo naudojamos pertraukim\xc5\xb3 aptarnavimui, kai kada \xe2\x80\x93 sistemin\xc4\x97s bibliotekos paprogrami\xc5\xb3 kvietimui._NEWLINE_Sud\xc4\x97tingiausia (ir ilgiausiai vykdoma) komanda buvo XTHL. Ji sukeisdavo vietomis registr\xc5\xb3 poros HL turin\xc4\xaf su steko rodykl\xc4\x97s adresuojamos ir jai sekan\xc4\x8dios atminties l\xc4\x85steli\xc5\xb3 turiniu. Komanda buvo skirta asemblerio programuotoj\xc5\xb3 beveik nenaudotam paprogram\xc4\x97s parametr\xc5\xb3 perdavimui per stek\xc4\x85.\n_START_SECTION_\n\xc5\xa0e\xc5\xa1iolikos bit\xc5\xb3 operacijos\n_START_PARAGRAPH_\nNors Intel 8080 paprastai minimas kaip a\xc5\xa1tuoni\xc5\xb3 bit\xc5\xb3 procesorius, kai kurias operacijas buvo galima atlikti ir su 16 bit\xc5\xb3 skai\xc4\x8diais. Pavyzd\xc5\xbeiui, buvo galima vienetu padidinti arba suma\xc5\xbeinti registr\xc5\xb3 poros reik\xc5\xa1m\xc4\x99 (INX, DXC), sukeisti vietomis DE ir HL por\xc5\xb3 reik\xc5\xa1mes (XCHG), sud\xc4\x97ti 16 bit\xc5\xb3 skai\xc4\x8dius (DAD) ir atlikti 16 bit\xc5\xb3 aritmetin\xc4\xaf post\xc5\xabm\xc4\xaf \xc4\xaf kair\xc4\x99 (DAD H).\n_START_SECTION_\nPort\xc5\xb3 erdv\xc4\x97\n_START_PARAGRAPH_\n8080 tur\xc4\x97jo atskir\xc4\x85 \xc4\xafvedimo/i\xc5\xa1vedimo \xc4\xafrengini\xc5\xb3 (port\xc5\xb3) erdv\xc4\x99 ir gal\xc4\x97jo aptarnauti 256 \xc4\xafvedimo ir 256 i\xc5\xa1vedimo 8 bit\xc5\xb3 portus, ta\xc4\x8diau skaitymo bei ra\xc5\xa1ymo signalai atmin\xc4\x8diai ir portams buvo bendri. Nustatyti, \xc4\xaf k\xc4\x85 kreipiasi procesorius, buvo galima tik papildom\xc5\xb3 mikroschem\xc5\xb3 pagalba. Tod\xc4\x97l paprastesniuose kompiuteriuose portai buvo pasiekiami tiesiog kaip atminties l\xc4\x85stel\xc4\x97s. Specialios port\xc5\xb3 skaitymo bei ra\xc5\xa1ymo komandos (IN ir OUT) buvo arba nenaudojamos, arba naudojamos \xc5\xbeinant jog procesorius dubliuoja a\xc5\xa1tuoni\xc5\xb3 bit\xc5\xb3 porto adres\xc4\x85 ir \xc4\xaf auk\xc5\xa1tesn\xc4\xaf atminties adreso bait\xc4\x85 (pavyzd\xc5\xbeiui, komanda IN 0E, nedekoduojant kreipimosi adresato, buvo analogi\xc5\xa1ka skaitymo i\xc5\xa1 l\xc4\x85stel\xc4\x97s 0E0E komandai LDA 0E0E).\n_START_SECTION_\nSteko erdv\xc4\x97\n_START_PARAGRAPH_\nVienas i\xc5\xa1 procesoriaus b\xc5\xabsenos bit\xc5\xb3 (\xc5\xber. \xc5\xbeemiau) rodydavo, jog procesorius kreipiasi \xc4\xaf steko atminties l\xc4\x85stel\xc4\x99. Naudojant \xc5\xa1\xc4\xaf bit\xc4\x85, buvo galima sukurti iki 64 kilobait\xc5\xb3 dyd\xc5\xbeio su pagrindine atmintimi nesusijus\xc4\xaf (i\xc5\xa1orin\xc4\xaf) stek\xc4\x85. Ta\xc4\x8diau tokia galimyb\xc4\x97 buvo naudojama itin retai. Ignoruojant \xc5\xa1\xc4\xaf bit\xc4\x85, stekas tapdavo pagrindin\xc4\x97s atminties dalimi.\n_START_SECTION_\nProcesoriaus b\xc5\xabsenos \xc5\xbeodis\n_START_PARAGRAPH_\nViename komandos vykdymo etap\xc5\xb3 duomen\xc5\xb3 magistral\xc4\x97je trumpam pasirodydavo procesoriaus b\xc5\xabsenos \xc5\xbeodis, apra\xc5\xa1antis procesoriaus veikl\xc4\x85 bei artimiausius ketinimus. Atskiri \xc5\xa1io \xc5\xbeod\xc5\xbeio bitai informuodavo, \xc4\xaf k\xc4\x85 (atmint\xc4\xaf, \xc4\xafvedimo \xe2\x80\x93 i\xc5\xa1vedimo port\xc4\x85 ar stek\xc4\x85) kreipiasi procesorius. Bit\xc5\xb3 reik\xc5\xa1m\xc4\x97s buvo reikalingos aptarnaujant pertraukimus ir tiesiogin\xc4\xaf atminties valdym\xc4\x85.'