Anda di halaman 1dari 14

Latihan Simulasi CPU

Mata Kuliah Arsitektur Organisasi Komputer

Oleh :
Melany Puspita Wardhani
3213111027

SISTEM INFORMASI PROGRAM DIPLOMA TIGA


PROGRAM DIPLOMA
UNIVERSITAS TEKNOLOGI YOGYAKARTA
2023
Latihan !

MOV #5, R00


MOV #8, R01
ADD R00, R01
PSH R01
PSH R00
CMP R00, R01
JMP 0
POP R02
POP R03
CMP R04, R05
JEQ 0
HLT

Penyelesaian :

1. Buka aplikasi CPU Simulator

Tampilan awal CPU simulator.


2. Buat new program. Caranya itu liat pada bagian bawah kiri pada aplikasi CPU
simulator. Disitu terdapat menu program dan ada bagian new program.

3. Pada bagian Program Name, silakan isi nama program yang hendak dibuat. Saya isi
dengan nama “Program CPU”. Lalu, pada bagian Base Address saya isi “100”.

4. Setelah itu klik ADD.

5. Untuk mengecek apakah program berhasil dibuat, silahkan bisa dilihat pada bagian
program list.
Jika berhasil, maka program yang tadi dibuat akan tampil pada bagian program list
seperti gambar diatas.

6. Selanjutnya, mulai dengan menambahkan instruksi. Instruksi sesuai dengan latihan


yang diberikan.
Untuk menambahkan instruksi itu terdapat pada menu Instruction.

7. Lalu, klik ADD NEW.


8. Masukkan instruksi sesuai dengan latihan yang diberikan.

1 Pada bagian op code, pilih instruksi MOV yang terdapat pada bagian data
transfer.
2 Masukka nilai 5.
3 simpan pada register “R00”.
4 Klik NEW INSTRUCTION.

9. Jika instruksi berhasil di buat, nanti akan tampil pada bagian CPU INSTRUCTIONS
IN MEMORY (RAM).
10. Selanjutnya, masukkan semua instruksi yang ada pada latihan. Untuk Langkah-langkah
sesuai dengan penjelasan pada nomor 8.
Untuk instruksi ADD itu terdapat pada bagian Arithmetic.

11. Sebelum lanjut ke instruksi selanjutnya, saya akan menjelaskan apa itu instruksi MOV.
MOV : Moves data to register adalah instruksi yang digunakan untuk mentransfer data dari
satu lokasi ke lokasi lain dalam unit pemrosesan pusat (CPU). Instruksi MOV sangat umum
digunakan dalam bahasa pemrograman assembly dan digunakan untuk memindahkan nilai atau
data dari satu register ke register lain, antara register dan memori, atau antara memori dan
register.
Misal : MOV #5, R00 itu artinya menyimpan nilai 5 pada register “R00”.

Lalu, Arithmetic ADD itu operasi aritmatika yang digunakan untuk menjumlah nilai sesuai
dengan register mana dan mana yang hendak dijumlahkan.

12. Untuk penjelasan yang lebih jelas dari definisi yang telah saya paparkan sebelumnya, bisa lihat
pada penjelasan ini :
Klik 2 kali pada MOV #5, R00. Ini untuk mengeluarkan nilai yang terdapat pada R00. Nilai
tersebut akan muncul pada bagian GENERAL PURPOSE CPU REGISTERS, yang berada pada
kolom paling kanan.
13. Keluarkan juga nilai pada R01. Dan hasilnya seperti gambar dibawah ini.
14. Klik 2 kali pada ADD. Nanti akan muncul hasil dari penjumlahan pada R00 dan R01.

Dan hasil dari 5 yang terdapat pada R00 dijumlah dengan 8 pada R01 adalah 13.
15. Lanjutkan untuk memasukkan instruksi berikutnya. Caranya sesuai dengan langkah-
langkah pada nomor 8.
Hasil PSH R01.

Hasil PSH R00.


Hasil POP R02

Hasil POP R03


HLT

Saat saya run dengan kecepatan slow


Fat

Instruksi "PSH" dalam simulator CPU biasanya digunakan untuk melakukan operasi
penumpukan (stack) pada CPU. Instruksi ini berfungsi untuk memindahkan nilai dari
register atau memori ke dalam tumpukan (stack) untuk tujuan penyimpanan sementara.

Instruksi "CMP" dalam simulator CPU biasanya digunakan untuk membandingkan


dua nilai dan mengatur beberapa status flag (bendera status) berdasarkan hasil
perbandingan tersebut. Instruksi ini tidak menghasilkan hasil perbandingan yang
dapat digunakan secara langsung, tetapi mengatur flag (bendera) yang dapat
digunakan oleh instruksi berikutnya dalam aliran eksekusi program.
Instruksi "JMP" dalam simulator CPU digunakan untuk melakukan lompatan (jump)
dalam aliran eksekusi program ke lokasi yang ditentukan. Instruksi ini memungkinkan
program untuk melompat ke alamat memori tertentu dan melanjutkan eksekusi dari
sana.

Instruksi "POP" dalam simulator CPU digunakan untuk mengambil (mengeluarkan)


nilai dari tumpukan (stack). Instruksi ini berguna dalam operasi pemulihan nilai yang
sebelumnya disimpan dalam tumpukan.

Instruksi "JEQ" (Jump if Equal) dalam CPU simulator digunakan untuk melakukan
lompatan (jump) ke alamat tertentu jika flag (bendera) "Zero" teratur (set). Instruksi ini
memungkinkan program untuk melakukan pengujian kondisi dan melompat ke lokasi
tertentu berdasarkan hasil perbandingan sebelumnya.

Instruksi "HLT" (Halt) dalam CPU simulator digunakan untuk menghentikan eksekusi
program secara keseluruhan. Instruksi ini memberi perintah kepada CPU untuk
menghentikan operasi normal dan menunggu tindakan selanjutnya.

Anda mungkin juga menyukai