Pertemuan 9 Strukturisasi Control Flow pada Bahasa rakitan 8088 Matakuliah : T0483 / Bahasa Rakitan Tahun : 2005 Versi : 1.0 Pertemuan 9 Strukturisasi Control Flow pada Bahasa rakitan 8088
Learning Outcomes Pada akhir pertemuan ini, diharapkan mahasiswa akan mampu : Mahasiswa akan dapat menghasilkan program yang sudah menggunakan konsep strukturisasi seperti halnya pada bahasa tingkat tinggi
Struktur IF-THEN-ELSE Struktur CASE-ELSE Struktur WHILE-DO Outline Materi Struktur IF-THEN Struktur IF-THEN-ELSE Struktur CASE-ELSE Struktur WHILE-DO Struktur Repeat-Until Struktur FOR-TO
Contoh Struktur IF-THEN-ELSE pada Bhs Pascal: <<ISI>> Contoh Struktur IF-THEN-ELSE pada Bhs Pascal: If a > 3 then ------- ------- then part ------- else ------- else part next statement
Contoh Struktur IF-THEN-ELSE pada Bhs Pascal (lanjutan) <<ISI>> Contoh Struktur IF-THEN-ELSE pada Bhs Pascal (lanjutan) Bagian then akan dilaksanakan jika kondisi a > 3 terpenuhi (true). Pada Assembly, instruksi conditional jump akan dilaksanakan (jump ke suatu label) saat kondisi perbandingan sebelumnya (dengan CMP atau TEST) terpenuhi. Kedua kondisi ini berlawanan, sehingga strukturisasi dalam Assembly akan terwujud jika kondisi dalam Pascal di - Not - kan. Dengan asumsi bahwa variabel a (pada contoh IF - THEN - ELSE ini ) bertipe unsigned, maka kondisi yang dibuat dalam Assembly adalah jump jika not > 3 : CMP a, 3 atau CMP a, 3 JNA ELSEIF JBE ELSEIF
Contoh lengkapnya : <<ISI>> CMP a, 3 JNA ELSEIF ---- ---- then part JMP ENDIF ELSEIF: ---- else part ENDIF: next statement ATAU : CMP a, 3 JLE ELSEIF ---- ---- then part JMP ENDIF ELSEIF: ---- else part ENDIF: next statement
Pascal: case a of 3 : inc (a); 4 : dec (a); 5 : inc (b); else dec (b); <<ISI>> Kerangka CASE - ELSE Assembly : CMP a, 3 JNE Cmp2 INC a JMP ENDCASE Cmp2: CMP a, 4 JNE Cmp3 DEC a Cmp3: CMP a, 5 JNE ENDCASE INC B ELSECASE: DEC B ENDCASE : next statement Pascal: case a of 3 : inc (a); 4 : dec (a); 5 : inc (b); else dec (b); end; Next statement;
<<ISI>>
<<ISI>>
<<ISI>>
<<ISI>>
<< CLOSING>> Control Flow pada Bahasa Rakitan pada dasarnya sama dengan bahasa tingkat tinggi seperti Pascal, C dll.