Mencetak Satu Kalimat dengan Bahasa Rakitan

Jika mencetak satu karakter terlalu lama, kita dapat mencetak langsung satu kalimat. Kalimat yang akan dicetak diletakkan di RAM di luar range program. Jika program antara 100 hingga 110, maka letakkan alamat kalimat yang akan dicetak di atas 110.

Di sini kalimat yang akan ditulis diletakkan pada alamat Offset RAM: 200 (di atas 107 pada program di atas). Tetapi kita harus mengisi data di alamat tersebut. Gunakan instruksi “f” yang berarti “fill”. Untuk mengecek ketik instruksi “d” yang artinya “dump”, untuk melihatnya.

Karena data di alamat offset 200 sudah terisi dengan kalimat TEKNIK KOMPUTER UNISMA BEKASI, maka jika dijalankan dengan mengetik “g” yang artinya “go”, maka akan muncul tulisan tersebut seperti gambar di atas. Berikutnya agar program di atas tersimpan di harddisk dengan nama misalnya tkunisma.com gunakan instruksi berikut ini:

Instruksi “n” yang artinya “name” bermaksud memberi nama file yang nanti tersimpan, dalam hal ini di letakkan di directory D, dengan nama tkunisma.com. rip bermaksud memberitahu prosesor awal program, yakni offset 100. rcx perlu dimasukan sebagai batas akhir program, di sini kita masukan 271 ke atas karena data tulisan ada di situ. Setelah diketik “w” yang artinya “write”, maka prosesor akan menyimpan di harddisk dengan nama tkunisma.com.

Cara Melihat Kode Bahasa Rakitan dari File

Kita sudah memiliki file di D: dengan nama tkunisma.com. Arahkan ke folder tersebut, kemudian masuk ke debug dengan mengetik “debug”. Pada mode debug ketik namanya, lengkap dengan folder dan sub direktori jika ada. Setelah diketik “l” yang artinya “load”, lanjutkan dengan “u100” yang artinya “unassembly dari offset 100”.

Menghitung Alamat Real

Alamat yang muncul dalam bahasa rakitan berformat segment:offset. Untuk mengetahui alamat fisik, jumlahkan alamat segment dengan offset dengan menambah satu digit pada segment agar diperoleh total bit 20 bit, karena jika hanya dijumlahkan langsung, jumlah bitnya 16, padahal prosesor berjumlah 20 bit. Misal kita menghitung alamat real dari instruksi MOV ah,9 di atas, jumlahkan segment dan offsetnya tetapi Segment di tambah satu bit “0” di belakangnya. Hati-hati, angka tersebut Hexadesimal.

Alamat real MOV ah,09 adalah 13f10 + 0100 = 14010

 

 

 

Iklan

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout /  Ubah )

Foto Google+

You are commenting using your Google+ account. Logout /  Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout /  Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout /  Ubah )

w

Connecting to %s