- Home >
- fakti upy , Materi Kuliah , Pemrograman >
- Input Karakter Dan Input String
Posted by : Unknown
Jumat, 19 Oktober 2012
Setiap
program umumnya memerlukan data dari luar seperti input dari keyboard, mouse
dan sebagainya. Jika kita menggunakan bahasa tinggkat tinggi, kita bisa
menentukan tipe data yang akan kita terima dari inputan. Misalnya kita masukan
angka 10, dengan program Pascal atau C++ inputan tersebut bisa langsung kita
jadikan tipe bilangan ataupun string. Dalam bahasa assembly inputan dari
keyboard hanya memiliki dua macam input yaitu : input satu karakter dan input
string (untaian karakter). Jika kita ingin membuat program untuk menghitung
penjumlahan dua buah nilai, maka kita harus melakukan manipulasi register yang
cukup rumit karena kita harus melakukan konversi karakter ASCII menjadi angka
secara manual (register by register). Untuk melakukan operasi input satu
karakter kita menggunakan service 01h,
07h, 08h, 06h dan untuk input
string kita gunakan service 0Ah. Berikut
contoh operasi input satu karakter :
Penjelasan Program :
Penjelasan Program :
Pada
saat interupsi 21h dengan service 01 di jalankan, maka program akan
menahan layar sampai pengguna menekan sembarang tombol. Nilai ASCII tombol yang ditekan akan
dimasukan ke dalam register AL.
Setelah itu kita simpan dulu isi dari register AL ke memory karena kita akan
memakai register AH untuk mencetak
string. Mengapa harus disimpan? Karena register AH dan AL satu badan, jika ada
perubahan register AH maka akan mempengaruhi register AL. setelah string di
cetak baru kita ambil lagi nilai yang ada di memory dan kita masukan ke dalam
register DL. Jika nilai sudah masuk
ke register DL, baru kita bisa menggunakan interupsi 21h dengan service 02h
untuk mencetak karakter yang ada dalam register DL tadi. Untuk mencoba service
lainnya (06h, 07h, 08h) silakan anda ganti isi register AH.
Output:
Output:
Sumber terkait: http://fds077.wordpress.com/