Assembler principleri
Joba
Assembler pragrammalastiriw tili ha’m principleri
Assembler tilinin’ Assambleya ha’m Kompilyator pragrammalastiriw tilinen parqi
Programmalastırıw tilleri haqqinda ken’ tu’sinik
Assembler da’stu’rlew tili
Assembler hám mashina tili " tómen darejedegi tiller" dep ataladı. Basqa tárepden, COBOL, BASIC, Paskal, C tili, C ++, Java hám C # sıyaqlı programmalastırıw tilleri " joqarı da’rejegi tiller" dep ataladı. Tómen da’reje oniń kompyuterdiń shiyki ichlashiga jaqınlıǵın, joqarı da’rejesi oniń insan sezimine jaqınlıǵın ańlatadı (kompyuterdiń shiyki islewinen uzaqta ). Joqarı da’rejegi tiller kompyuter texnikasın bilmesden programmalastırıw imkaniyatın beredi. Joqarı da’rejegi til programmaları assambleyer programmalarına qaraǵanda kemrek qatarlarǵa iye hám olardi jáne de jaqsi jaratiw múmkin. Nátiyjede, búgingi kúnde montajshılar kemden kem qollanılıp atır hám kópshilik programmistler joqarı da’rejegi tillerden paydalanadılar.
Soǵan qaramay, assembler haqqındaǵı bilim eslew kerek emas, yadda tutılıwı kerek bolǵan wazıypa bolıp tabıladı. Eger programmistler assemblerni úyrenseler, ulardin’ programmalastırıw texnikası talay jaqsılanadı hám hátte joqarı da’rejegi tillerde de kompyuterlerdiń shiyki islewden xabarlı bolǵan arıq programmalardı (tez islewtin, ıqsham ólshemdegi programmalar )jaratiliwi múmkin boladı. Programmalastırıwshilar assambleyerni úyrengende, ular o’zlerinin’kompyuterge bolǵan túsiniklerin hám qızıǵıwshılıqların talay tereńlestiredilar.
Úshewler bul ketpa -ket assambleyer hám programmalastırıwdıń tiykarǵı usılları haqqında ulıwma mag’liwmat beredi.
● Assembler ne?
Endi assambleyer ne ekenligin túsintirip beremiz. Tosatdan, 1-dizimdi kórip shıǵıń. Bul kompilyator emas, bálki C tilinde jazılǵan programma. Eki gilt ma`nisin qosıw nátiyjesi displeyde kórsetiledi. Programma dizimin túsiniwin’izge hájet joq. Tek ingliz hám matematikanıń aralaspasi sıyaqlı kórinetuǵın bázi gápler bar ekenligine itibar beriń.
● S tilinde jazılǵan programmalar
# sonday-aq
int a, b, ans;
scanf (" % d", & a);
scanf (" % d", & b);
ans = a + b;
printf (" % d \ n", ans );
Kompyuterdiń mıyı bolǵan protsessor S tili programmaların tolqin ete alama? Juwap joq. C tili - programmalardı insan tiline uqsas imglis tilinde (inglis hám matematikada ) ańlatatuǵın programmalastırıw tili. Orayliq protsessor C tilinde jazılǵan programmanı túsiniwi ushın, " til kompilyatori" dep atalǵan konversion programmadan paydalanıp, C tiliniń ańlatpasın " mashina tili" (tolqin etiliwi hám islewi múmkin bolǵan cifrlı bahalar dizimi) bolıwı kerek.protsessor) ". bolıwı kerek. Windows ortalıǵında Listing 1 dizimin Kasan. c fayl atı menen saqlasan’iz jáne onı kompilyator menen aylantırsan’iz, Kasan. exe dep atalǵan mashina tilindegi fayl jaratiladi. Keyin protsessor Kasan. exe-dıń ta’rtibin tolqin etiwi hám islewi múmkin.
Hesh kim programmanı nomerler dizimi bolǵan mashina tilinde jazilmaydi. Usınıń sebepinen, stilistik usıl islep shıǵıldı, ol jaǵdayda mashina tilinde cifrlı baha menen kórsetilgen kórsetpege laqap (imglissheniń qısqartirilg’an versiyası ) berildi hám programmalastırıw laqap járdeminde ámelge asırıldı. Buǵan " jiynaliw tili" delinedi. Laqap " mnemonic" dep ataladı. Assambleya tilinde jazılǵan programma bul mnemonika dizimi. Mnemonik protsessordin’ apparat isleniwin ańlatadı.
Assambleya tilinde jazılǵan programmalar Kasan. asm sıyaqlı fayl atı menen saqlanadı. Anıqlaw aytatuǵın bolsaq, mnemonic-da jazılǵan Kasan. asm faylın mashina tilinde Kasan. exe faylına ózertilmegen programma "jiynawshi " bolıp tabıladı. Biroq, montaj tili kóbinese assembler dab ataladı, sol sebepli biz úshewler bu; ketpe -ketlikte assambleyer akemasidan paydalanamız.
● Assembler hám mashina tili órtasida birden jazıwmalar bar.
Listing 2 assambleyer programması hám mashina tili programması órtasidagi jazıwmalarni kórsetedi. PUSH hám MAń - bul mnemonika. 55 hám 8 B EC sıyaqlı mashina tili. Úshewler bul programmanıń wazıypası ilgeri kórsetilgen C tili programması menen bir qıylı. Programma dizimin túsiniwin’izge hájet joq. Ótinish, tek atmosferanı túsinip o’tiń.
Assambleyer programmasında C programmasına qaraǵanda kóbirek qatarlar bar ekenin kóriwińiz múmkin. Óytkeni sonda, kompilyatsiya etilgeninen keyin C tilinde isletilgen bir kórsetpe bir neshe mashina tillerine awdarma etilgen bolsa, montajda sletilgen bir buyrıq jiynawshidan keyin bir mashina tiline awdarma etiledi. Assambleyer hám mashina tili órtasida birde -bir jazıwlar bar. Sol sebepli assemblerda programmalastırıw mashina tilinde programmalastırıwǵa teń bolıp tabıladı. Sol sebepli bul úyreniw bolıp tabıladı.
Hár qıylı protsessorlardin’ aytılıwı hám orınlawǵa bolatuǵın bolǵan hár túrlı túrdegi mashina tilleri bar. Sol sebepli mnemonikanin’ mashina tili nomerlerine sáykes keletuǵın túrleri de hár túrlı. Joqarıda keltirilgen assambleyer programması jeke kompyuterińizda isletiletuǵın Pentium sıyaqlı " x86 ceriyali" dep atalǵan protsessorlarga mólsherlengen.
x86 protsessorlari funktsiyalarǵa bay hám kóplegen mnemonikalarga iye. Assambleyerni birinshi ret úyrenetug’inlar ushın bul júdá quramalı hám jaramsız. Sol sebepli, bul izbe-izlilikde biz COMET II dep atalǵan úskene ushın CASL II dep atalǵan jiynawshi itibar qaratamız. Bular " Informaciya texnologiyaları injenerleri imtixanlari" teması bolıp, olar Ekonomika, sawda hám sanaat ministrligi tárepinen basqarılatuǵın milliy sertifikatlaw imtixanı bolıp tabıladı. COMET II - bul qıyalıy apparat hám CASL II - qıyalıy"jiynawshi. COMET II-dıń ápiwayı apparat konfiguratsiyasi sebepli CASL II-de isletiletuǵın mnemonikalar sanı kem (ekinshi ceriyada kiritilgeni sıyaqlı 20 dan artıq ) hám hár kim onı ańsatǵana ózlestiriwi múmkin. Assambleyerni birinshi ret úyrenetug’inlar ushın juwap beredi.
Kompyuter texnikasınıń ush tiykarǵı komponenti bul protsessor, yad hám I / O. CPU programmanı túsindiriwleydi hám atqaradı. Yad programmalardı jazadı (kórsetpeler hám maǵlıwmatlar ). Kirgiziw-shıǵarıw kompyuterdi periferik apparatlarǵa (klaviatura, displey, disk apparatı hám basqalar ) ulaydi. Assambleyer tárepinen jaratılǵan programmanıń mazmunı sonnan ibarat, protsessor yadqa hám I / O ga maǵlıwmatlardı kiritedi hám shıǵaradı hám maǵlıwmatlar CPU ishinde esaplanadı. Bul apparattan xabarlı programmalastırıw.
CPU ishinde " registrlar" bar. Dizimnen ótiw - bul kórsetpeler hám maǵlıwmatlardı saqlaytuǵın konteyner. Biraq, bul jaysha konteyner emes, bálki ol maǵlıwmatlardı esaplaw funktsiyasına da iye. COMET II protsessorida onnan artıq registrlar ámeldegi, olar óz a’tlerı menen ajralıp turadı (GR0, GR1 hám basqalar. Assembler programmasında registrni atı menen belgileń.
Kelin’, individual registrlarnin’ rolin túsintirip beremiz. Kompyuter - bul programmalar aǵımın basqarıwshı " programma esaplagishi". SP - bul maydandı yadta isletiw ushın " Stack Pointer". GR0 den GR7 ge shekem maǵlıwmatlar menen islew ushın isletiletuǵın " ulıwma registrlar" bar. Ulıwma maqsetler ushın registrlar sanı segiztani quraydı, sebebi GR1 tákirarlaw sanın esaplaw ushın hám GR2 qosımsha menen islewdi ámelge asırıw ushın isletiledi. FR - bul operatsiya nátiyjesin belgilengenler etiwshi " Bayraq registri". PC, SP, GR0 den GR7 ge shekem bolǵan ólshemler 16 bıyt. Tek ǵana FR 3 bıyt kólemge iye.
Kompyuter ishinde barlıq maǵlıwmatlar ekilik nomerler retinde isleydi. Ekilik nomerler - bul tek 0 hám 1 sanları járdeminde nomerlerdi sáwlelendiriw usılı. Ekilik nomerdiń bir nomeri " bit" dep ataladı. Sol sebepli 16 -bitli registrni 0 yamasa 1 ni óz ishine alǵan 16 kishi qutilar qatarı dep esaplaw múmkin.
COMET II yadı - bul kórsetpeler yamasa maǵlıwmatlardı sáwlelendiriwshi 16 -bitli konteynerlar kompleksi. Yad, protsessordag’i registrlardan ayrıqsha bolıp esaplanıw, jaysha arifmetik funktsiyalarǵa iye bolmaǵan konteyner bolıp tabıladı. Jeke konteynerlar sanı boyınsha ajralıp turadı. Bul nomer " yad adresi" dep ataladı. Yad adresiniń birligi " mánzil" bolıp tabıladı. COMET II yad mánzilleri 0 den 65535 ke shekem bolǵan yadqa iye (65536 konteyner). Assambleyer programmasında yad adresin yaddıń adresin kórsetiń.
COMET II I / O programmasınan tuwrıdan-tuwrı basqarıw múmkin emes. Maǵlıwmatlardı klaviaturadan kirgiziwde yamasa displeyde maǵlıwmatlardı kórsetiwde, qıyalıy OS (bul OS atalmaǵan ) funktsiyalarınan paydalanıw kerek. OS tárepinen usınıs etilgen funktsiyalardı assambleyer programmasınan shaqırıp, tikkeley bolmaǵan kirgiziw ámelge asıriladı. Buǵan " qadaǵalawshı (yamasa sistema) " dep ataladı. Qadaǵalawshı bul operatsion sistema. Hátte jeke kompyuterińizda isleytuǵın Windows programması dep atalǵan OS funktsiyasınan paydalanǵan halda tikkeley bolmaǵan tikkeley bolmaǵan kirisiw-shıǵarıw / kirgiziw-shıǵarıw (kirisiw / shıǵıw ) operatsion sistemasında isleydi. Supervizor shaqırıwları bul ceriyaning 4-bóleginde tolıq bayanlainadi.
Do'stlaringiz bilan baham: |