Dokumen ini membahas tentang belajar bahasa rakitan MIPS32 menggunakan simulator SPIM. Terdapat penjelasan tentang instalasi SPIM, penulisan source code program MIPS dalam format .s, dan contoh-contoh penggunaan perintah aritmatika dasar seperti penjumlahan, pengurangan, perkalian, dan pembagian dalam bahasa rakitan MIPS.
BAHAN SOSIALISASI PPDB SMA-SMK NEGERI DISDIKSU TP. 2024-2025 REVISI.pptx
BELAJAR_BAHASA_RAKITAN_DENGAN_SPIM
1. 1
Belajar Bahasa Rakitan dengan SPIM A MIPS32 Simulator
Dosen: Ir. Sihar, M.T.
Departemen Sistem Komputer – Fak. Teknik
Bandung - 2003
Referensi:
[1]. https://course.ccs.neu.edu/csu4410/spim_documentation.pdf
[2]. http://pages.cs.wisc.edu/~larus/spim.html
[3]. http://pages.cs.wisc.edu/~larus/HP_AppA.pdf
[4]. http://web.cs.iastate.edu/~cs321/utils/mips/unixspim/spim-6.4/spim.html
[5]. Patterson, D.A., Hennessy, J.L. Computer Organization and Design: The Hardware/Software
Interface, 5th Edition. Morgan Kaufmann. 2003.
[6]. Simamora, S.N.M.P. “Diktat Pemrograman Dasar Bahasa Rakitan SPIM Simulator”. Dept.
Sistem Komputer, Fak. Teknik. ITHB. Bandung. 2002.
[7]. Simamora, S.N.M.P. “Diktat Pemrograman TASM 2.0”. Dept. T. Informatika, Fak. Teknik.
ITHB. Bandung. 2002
I. Mekanisme dan Tata-cara Instalasi Tools
Langkah-1: click file dengan extention *.msi
Langkah-2: click tombol Run, serta tunggu selanjutnya
2. 2
Langkah-3: menunggu progess setelah tombol Run, serta tunggu selanjutnya
Langkah-4: click tombol Next, serta tunggu selanjutnya
Langkah-5: konfirmasi path dimana file diletakkan serta click tombol Next untuk proses
selanjutnya
3. 3
Langkah-6: konfirmasi lebih lanjut sebelum proses instalasi akan dilakukan, dan click tombol
Next untuk proses selanjutnya
Langkah-7: tampilan progress saat proses instalasi, dan tunggu proses selanjutnya
4. 4
Langkah-8: Proses instalasi telah selesai, dan click tombol Next untuk mengakhiri
II. Menuliskan source-code (*.s)
Dalam menuliskan source-code bahasa rakitan menggunakan editor Notepad, dan di-compile oleh
assembler PCSpim.
Contoh-1: -menampilkan string atau kata ‘Mari kuliah di Kampus ITHB Berprestasi’;
Nama source-code: cth1.s
.data
kataku: .asciiz "Mari kuliah di Kampus ITHB Berprestasi"
.text
main:
la $a0, kataku
li $v0, 4
syscall
Tampilan mekanisme proses translasi pada user-interface:
5. 5
Tampilan pada console:
Contoh berikut menunjukan bahwa penamaan variabel dengan murni terdiri dari karakter tidak
membutuhkan substansi makna, misalkan sebuah akronim ‘str’.
Contoh-2: -menampilkan string atau kata ‘Dept. Sistem Komputer-ITHB Bandung’;
Nama source-code: cth2.s
.data
str: .asciiz "Dept. Sistem Komputer-ITHB Bandung"
.text
main:
la $a0, str
li $v0, 4
syscall
Contoh berikut menunjukan bahwa penamaan variabel dengan kombinasi terdiri dari karakter
dan bilangan, misalkan sebuah nama variabel ‘aju1’.
Contoh-3: -menampilkan string atau kata ‘Ayo kuliah di Dept. Sistem Komputer, ITHB
Bandung’;
Nama source-code: cth3.s
.data
aju1: .asciiz "Ayo kuliah di Dept. Sistem Komputer, ITHB Bandung"
.text
main:
la $a0, aju1
li $v0, 4
syscall
III. Beroperasi dengan statement arithmatika
Perhatikan konstruksi-algoritma berikut ini:
a1←0.25;
a1=a1∗2;
tampilkan a1;
Setiap konstanta, misalkan 2 tidak bisa serta-merta di-loading ke register agar langsung
dieksekusi dalam expression namun harus ditampungkan ke sebuah register.
Dituliskan dengan source-code: cth4.s
6. 6
.data
aju1: .asciiz "Hasilnya adalah "
.text
.globl main
main:
li.s $f0, 0.25
li.s $f2, 2.0
mul.s $f12, $f0, $f2
la $a0, aju1
li $v0, 4
syscall
li $v0, 2
syscall
Perhatikan konstruksi-algoritma berikut ini:
aT←(-0.25);
aT=(aT+1)∗2;
tampilkan aT;
Dituliskan dengan source-code: cth5.s
.data
aju1: .asciiz "Hasilnya = "
.text
.globl main
main:
li.s $f0, -0.25
li.s $f2, 1.0
li.s $f4, 2.0
add.s $f12, $f0, $f2
mul.s $f12, $f12, $f4
la $a0, aju1
li $v0, 4
syscall
li $v0, 2
syscall
Perhatikan konstruksi-algoritma berikut ini:
xT←(1.09);
xL←(-0.75);
x=(xT−1)∗(xL÷5);
tampilkan x;
Dituliskan dengan source-code: cth6.s
.data
aju1: .asciiz "Hasil: "
.text
.globl main
main:
li.s $f0, 1.09
li.s $f2, -0.75
li.s $f4, 1.0
li.s $f6, 5.0