a. Loop program
Pemrograman langsung
Program input / output dari percobaan pertama adalah contoh pemrograman
langsung. Dalam hal ini, sinyal pada input 50h dibaca dan ditampilkan secara
langsung oleh LED keluaran pada 00h.
Dalam contoh ini, program dengan jelas berakhir setelah sinyal dikeluarkan.
Jenis program ini dikatakan langsung atau linier. Sebaliknya, program yang
perlu dijalankan tanpa batas waktu oleh prosesor harus menyertakan
fungsionalitas yang sesuai.
Perintah tanpa syarat jmp dapat digunakan untuk tujuan ini. Perintah ini
menyebabkan aliran program untuk terus kembali ke alamat lompat (tujuan
cabang).
Loop tak terbatas
Dalam contoh berikut, sinyal pada input 50h dibaca dan ditampilkan langsung
oleh LED pada output 00h. Siklus ini diulang terus menerus (lihat percobaan
pengulangan program). Jenis aliran program ini disebut loop tak terbatas.
Open the development environment and write the program shown alongside.
Assemble the program and open the debugger. Observe the effect of the
program in single step mode (by pressing the STEP key).
Once a program cycle has ended, execution returns to the start of it and it is
repeated. If you press the RUN key, the microprocessor will execute the routine
permanently. Experiment with the program using the switches and buttons of
input 50h.
b. Melompat bersyarat
Setiap bit dari register status bertanggung jawab untuk menunjukkan suatu
peristiwa tertentu. Jika suatu peristiwa terjadi, bit status yang sesuai diatur (1).
Jika suatu peristiwa tidak terjadi, bit status yang sesuai diatur ulang (0). Dalam
kombinasi dengan perintah yang sesuai, bit status ini dapat digunakan untuk
memicu lompatan hanya jika peristiwa tertentu terjadi, bukan sebaliknya.
Lompatan seperti itu disebut lompatan kondisional daripada lompatan tanpa
syarat.
Contoh
Aliran program: