MIPS System Call
Program MIPS boleh menjadikan panggilan sistem dengan
menggantikan parameter dalam daftaran yang ditetapkan, bergantung kepada
panggilan, dan melaksanakan arahan perangkap. Kembali kepada keputusan dibuat didapati dalam daftar
dinyatakan lain, juga bergantung kepada panggilan.
Gambar rajah:
Dalam
SPIM “exception handle” digunakan dengan cara berikut:
li
$v0, code # Load $v0 with the
"system call code"
# number of an OS service
......... # Put parameters for the service in
......... # registers $a0, $a1
Syscall # Invoke the operating system
# Return value (if any) is
in $v0 or $f0
MIPS Assembly Languages Program Format
MIPS program penghimpun adalah fail teks biasa yang terdiri
daripada dua jenis kenyataan:
·
Menghimpun arahan yang memberitahu penghimpun
bagaimana untuk menterjemahkan program tetapi tidak boleh diterjemahkan kepada
kod mesin.
·
Arahan dilaksanakan, dimana pelaksanaan akan
diterjemahkan kepada kod mesin. Kadang-kadang boleh dirujuk sebagai kod
program.
Bahagian label satu kenyataan mesti bermula dalam lajur 1
dan mesti berakhir dengan ":". ":" Tidak dijadikan
sebahagian daripada label. Ia hanya berfungsi untuk visual membezakan definisi
label baru dari unsur-unsur program lain.
Setiap label mewakili alamat ingatan dalam bahasa himpunan.
Ia boleh menjadi alamat data atau adddress arahan (iaitu label boleh muncul
dalam kedua-dua teks dan data.
Label mewakili alamat elemen arahan atau data yang segera berikut,
sama ada ia mengikut baris yang sama atau garis berikutnya.
Contoh:
main : sll $0,$0,0
sll $0,$0,0
sll $0,$0,0
sll $0,$0,0
j main # jump to the point labeled main
addiu $8,$8,1
Opcode (Operational Code)
Opcode adalah sebahagian
daripada arahan bahasa mesin yang menentukan operasi yang perlu dilakukan.
Spesifikasi mereka dan format dibentangkan dalam seni bina set arahan
pemproses.
Opcode adalah bidang yang
ditandakan operasi asas dan format arahan. Bahasa Mnemonik biasanya adalah kod
perenambelasan digunakan bagi maksud kesederhanaan dan pembacaan.
Operand
Kendalian mungkin mengandungi daftar, jumlah anjakan, label
untuk memasuki ke dalam dan berterusan atau alamat.
*Nyatakan data yang diperlukan oleh operasi
* Operan boleh daftar, pembolehubah ingatan, atau pemalar
* Kebanyakan arahan mempunyai tiga operand
Contoh:
addiu $t0,$t0,1 # increment $t0
DISEDIAKAN OLEH;
LIM ZERKIE
B031210127