- Ulimi lomhlangano luhlela imiyalelo yalo ngenjongo: ukudlulisa, ukubala, ukulawula ukugeleza, nokuningi.
- Umyalelo ngamunye uqukethe i-opcode nama-operands, anamafomethi ahlukene kuye ngesakhiwo.
- Kunezindlela ezimbalwa zokukhuluma zokufinyelela kudatha, njengalezo ezisheshayo, eziqondile, nezingaqondile.

Ulimi lomhlangano bekungenye yezinsika eziyisisekelo zokuthuthukiswa kwesoftware kusukela ekuqaleni kwekhompyutha. Yize izilimi ezisezingeni eliphezulu zibusa indawo namuhla, isihlanganisi sihlala sisetshenziswa kabanzi futhi sisebenza ezindaweni lapho ukulawulwa kwehadiwe, ukwenziwa ngcono, noma izithiyo zezinsiza kubaluleke kakhulu.
Kulesi sihloko, sizohlola izinhlobo zemiyalelo yolimi lokuhlanganisa, sihlaziye isakhiwo sazo, inhloso, izindlela zokubhekana, nokuthi zihlelwe kanjani kuzo zonke izakhiwo ezahlukene. Uzothola nezibonelo, amafomethi, kanye nokubuka konke okuphelele okuzokuvumela ukuthi uqonde ngokugcwele i-logic ngemuva kwale miyalelo, esebenza eduze kakhulu nehadiwe.
Uyini umyalo ngolimi lokuhlangana?
Imiyalelo yokuhlanganisa umyalo i-CPU engawuqonda ngqo (uma usuhunyushwe waba ikhodi yomshini ngohlelo lwe-assembler). Imiyalelo ngayinye inenhloso ethile futhi imvamisa yakhiwa i- mnemonic emele ukusebenza kanye ne -operands eyodwa noma ngaphezulu ezibonisa lapho idatha ithathwa khona kanye/noma lapho imiphumela igcinwa khona.
Le miyalo incike kakhulu ekwakhiweni kwephrosesa, ngakho-ke uhlobo ngalunye lwe-CPU (noma ngabe i-x86, i-ARM, i-MIPS, phakathi kwezinye) inesethi yayo yemiyalelo ene-syntax ethile namandla.
Isakhiwo somyalelo
Imiyalo ngokuvamile yakhiwa izingxenye ezimbili:
- Ikhodi yokusebenza (i-opcode): Ikhombisa isenzo okumele senziwa, njengokwengeza, ukuhambisa idatha, ukuqhathanisa, njll.
I-Operands inikeza ulwazi oludingekayo ukuze kwenziwe lo msebenzi futhi lungagcinwa kumarejista, kwimemori, noma kube yizinto ezihlala njalo. Akuzona zonke iziyalezo ezidinga ama-operand, futhi kwezinye izimo, lezi zingase zibe yimfihlo emyalezweni noma zigcinwe kumarejista achazwe ngaphambilini.
Izinhlobo zemiyalelo ngolimi lokuhlanganisa
Ngokuya ngomsebenzi abawenzayo ngaphakathi kohlelo, imiyalelo yolimi lomhlangano ingahlukaniswa ngamaqembu amaningana. Okubaluleke kakhulu kuchazwe ngezansi:
1. Imiyalo yokudlulisa idatha
Le miyalelo ivumela idatha ukuthi ikopishwe isuka kwenye indawo iye kwenye ngaphandle kokushintsha okuqukethwe kwayo emthonjeni. Ibalulekile ekuhambiseni ulwazi phakathi kwamarejista, imemori, kanye nezinto ezisetshenziswayo.
Eminye yemiyalo ejwayeleke kakhulu kuleli qembu yilena:
- I-MOV: Ikopisha okuqukethwe kwe-operand eyodwa kwenye. Ngokwesibonelo,
MOV AX, BXkopisha okuqukethwe kwe-BX ku-AX. - MOVS / MOVSB / MOVSW: Ihambisa iyunithi yezinhlamvu isuka ekhelini eliwumthombo (SI) iye ekhelini okuyiwa kuyo (DI), yenza inqubo yokudlulisa ngokuzenzakalelayo.
- I-LODS / LODSB / LODSW: Ilayisha inani elisuka ekhelini elikhonjiswe irejista ye-SI ku-accumulator (AL noma i-AX).
- FUNDA: Ilayisha ikheli elisebenzayo esikhundleni senani. Iwusizo ekutholeni ikheli lokuguquguquka noma isakhiwo.
2. Iziqondiso zebhethri
I-stack iyisakhiwo se-LIFO (esingena ekugcineni, esiphuma kuqala) esisetshenziselwa ukugcina idatha okwesikhashana, ukudlulisa amapharamitha, noma ukulondoloza umongo wokusebenza.
- PHUSHA: Igcina inani kusitaki, yehlisa isikhombi se-SP.
- I-POP: Ibuyisa inani lakamuva kakhulu eligcinwe kusitaki, i-SP ekhuphukayo.
- I-PUSHF / POPF: Bagcina futhi babuyise isimo samafulegi e-CPU esitakini.
3. Imiyalelo ye-Arithmetic nenengqondo
Zivumela ukubala kanye nemisebenzi ukuthi yenziwe kuma-bits. Le miyalelo ibalulekile ekuphatheni idatha yezinombolo kanye nokwenza izinqumo ekuhambeni kohlelo.
Phakathi kwezisetshenziswa kakhulu sithola:
- ENGEZA / SUBA: Ukwengeza nokususa.
- I-MUL / IMUL: Ukuphindaphinda kanambambili.
- I-DIV / IDIV: Ukuhlukaniswa (inani eliphelele noma elisayiniwe).
- KANYE / NOMA / XOR / CHA: Ukusebenza okunengqondo kwe-Bitwise.
- I-SHL / SHR / ROL / ROR: Ukushintsha kancane nokujikeleza.
4. Iziqondiso zokulawula ukugeleza
Zikuvumela ukuthi ushintshe ukulandelana kokwenziwa kohlelo , wethule ukugxuma noma izingcingo ezinemibandela nezingenamibandela kweminye imiyalelo.
- I-JMP: Yeqela kwelinye ikheli ngaphandle kwemibandela ohlelweni.
- SHAYELA / RET: Shayela kuhlelo olungaphansi bese ubuya.
- I-JE/JNE/JG/JL/JZ/JNZ: Ukweqa okunemibandela, kwenziwa uma izimo ezithile zifinyelelwa (ngemuva kokuqhathanisa).
5. Okokufaka/Okukhiphayo (I/O) Imiyalo
Zenza kube lula ukuxhumana phakathi kweprosesa namadivayisi angaphandle. Le miyalelo ivumela idatha ukuthi ifundwe futhi ibhalwe kuma-port (hardware).
- Ngo: Ifunda idatha embobeni yokufaka.
- QAPHELA: Ithumela idatha embobeni yokukhiphayo.
6. Iziqondiso zephoyinti elintantayo
Ama-CPU amaningi anama-coprocessor ezibalo (noma imiyalelo ekhethekile) azinikele ekusebenzeni ngezinombolo zedesimali (ezintantayo). Le miyalelo ivumela imisebenzi efana nalokhu:
- Ukwengeza, ukususa, ukuphindaphinda nokuhlukaniswa kwezinombolo zangempela.
- Imisebenzi ye-Trigonometric (sine, cosine, tangent).
- Imisebenzi ye-Logarithmic, exponential kanye nezimpande.
Le miyalelo ngokuvamile ihambisana nendinganiso ye-IEEE 754 yokunemba kwezinombolo.
Izindlela zokukhuluma
Ingxenye eyisisekelo yomklamo wemiyalelo ukuthi indawo yama-operands ihlonzwa kanjani. Izindlela zokulungisa zichaza indlela i-CPU efinyelela ngayo idatha.
1. Ukukhuluma ngokushesha
Idatha ifakiwe ngqo emyalweni. Iyashesha, kodwa ayivumeli ukushintsha amanani ngaphandle kokushintsha umyalelo.
MOV AX, 5
2. Ukukhuluma ngokuqondile
Ikheli lememori eliqukethe idatha licaciswe ngokusobala.
MOV AX,
3. Ukukhuluma ngokungaqondile
Ikheli elisebenzayo litholakala kokuqukethwe kwerekhodi. Liguquguquka kakhulu futhi lisetshenziselwa izakhiwo kanye nohlu oluxhunyiwe.
MOV AX,
4. Inkulumo enenkomba
Ikheli libalwa ngokungeza isisekelo kanye nenkomba (isibonelo, ukuwela ama-array). Isebenzisa amarejista akhethekile njenge-SI, i-DI, noma amarejista esisekelo + offset.
MOV AX,
Amafomethi wemiyalelo: izinhlobo ezahlukene kuye ngokuthi i-architecture
Isakhiwo somyalelo singahluka kuye ngesakhiwo. Amafomethi ajwayelekile afaka:
Ifomethi yezindlela ezi-4
Ihlanganisa ama-operand amabili, indawo yemiphumela, kanye nekheli lomyalo olandelayo. Manje ayisasebenzi ngenxa yobunzima bayo.
Ifomethi yezindlela ezi-3
Icacisa ama-operand amabili kanye nekheli lendawo oya kuyo. Kuvamile ekwakhiweni kwezakhiwo ze-RISC zanamuhla.
Ifomethi yezindlela ezi-2
Sebenzisa i-operand yomthombo kanye ne-operand yendawo okuyo (indawo okuyo nayo inganikela ngenani). Idumile ku-x86 nakwezinye izakhiwo ze-CISC.
Ifomethi yendlela engu-1
Kucacisiwe i-operand eyodwa kuphela; enye ithathwa njenge-accumulator. Ivamile kuma-processor amadala nezinhlelo ezilula.
Ifomethi yekheli elingu-0 (kusekelwe kusitaki)
Imisebenzi isebenzisa i-stack ukulanda nokugcina ama-operand kanye nemiphumela. Isebenza kahle kakhulu emishinini esekelwe ku-stack, njengezibali ezithile ezingahlelwa.
Imiyalo yamakhro namakhodi mbumbulu
Ukuze kuthuthukiswe umkhiqizo, abahlanganisi abaningi banikeza imiyalelo ye-macro , eyandisa umugqa owodwa ibe yimiyalelo eminingana yangempela. Lokhu kuyasiza ekugwemeni ukuphinda amaphethini ayinkimbinkimbi noma ekudaleni izakhiwo ezisezingeni eliphezulu njengezihibe noma izitatimende ezinemibandela.
I-Los ama-pseudo-opcodes Ziyiziqondiso umhlanganisi azihumusha ngaphakathi ngokulandelana kwemiyalelo yangempela. Ngokwesibonelo, NOP (akukho msebenzi) kungahunyushwa ngokuthi XCHG AX, AX kwe x86 CPU.
Assembler iziqondiso
Iziqondiso ( ezibizwa nangokuthi imisebenzi engamanga ) azizona iziqondiso ngomqondo oqinile. Zisebenza ukulawula inqubo yokuhlanganisa, ukuchaza idatha, izingxenye zekhodi, ama-macro, izimo zokuhlanganisa, njll.
Izibonelo ezijwayelekile zifaka:
- .data / .code: Akhombisa idatha noma isigaba sekhodi.
- .org: Isetha ikheli lapho umhlangano uzoqala khona.
- .equ: Ichaza izimo ezingaguquki ezingokomfanekiso.
Amacala okusetshenziswa kolimi emhlanganweni
Naphezu kokwanda kwezilimi ezisezingeni eliphezulu, ulimi lokuhlanganisa luhlala lubalulekile ezindaweni eziningana:
- Ukuthuthukiswa kwezinhlelo ezishumekiwe kanye nama-microcontroller.
- Abashayeli bezinhlelo, ama-bootloaders kanye ne-BIOS.
- Ukwenza kahle ngokwedlulele ezinhlelweni ezifana nemidlalo yevidiyo noma i-cryptography.
- Buyisela emuva ubunjiniyela, ukulungisa amaphutha, nokugebenga okusezingeni eliphansi.
Ngaphezu kwalokho, ukuqeqeshwa kolimi lokuhlanganisa kusathatha indawo ebalulekile kwisayensi yamakhompyutha kanye neziqu ze-elekthronikhi, njengoba kunikeza ukuqonda okujulile kokuthi iprosesa isebenza kanjani, ukuthi idatha igcinwa futhi iphathwa kanjani, nokuthi imiyalelo isetshenziswa kanjani ezingeni le-binary.
Ukuqonda zonke izinhlobo zemiyalelo yokuhlanganisa, ukwakheka kwazo, ukusebenza kwazo, nezindlela zokukhuluma kunikeza isisekelo esiqinile sanoma yimuphi umhleli ofuna ukujula ohlelweni lwezinga eliphansi noma aqonde ukuthi izilimi ezisezingeni eliphezulu zihunyushwa kanjani ekugcineni ikhodi yomshini. Nakuba ukusetshenziswa kwayo sekucacile kakhulu, kuseyithuluzi elibalulekile ezindaweni eziningi ezibalulekile zokuthuthukiswa kwesofthiwe nezinhlelo.
Inkomba
- 1 Uyini umyalo ngolimi lokuhlangana?
- 2 Isakhiwo somyalelo
- 3 Izinhlobo zemiyalelo ngolimi lokuhlanganisa
- 4 Izindlela zokukhuluma
- 5 Amafomethi wemiyalelo: izinhlobo ezahlukene kuye ngokuthi i-architecture
- 6 Imiyalo yamakhro namakhodi mbumbulu
- 7 Assembler iziqondiso
- 8 Amacala okusetshenziswa kolimi emhlanganweni