• Tidak ada hasil yang ditemukan

Desain Program Sederhana untuk Sistem Mikroprosesor dalam Bahasa Rakitan (Assembly)

N/A
N/A
Protected

Academic year: 2021

Membagikan "Desain Program Sederhana untuk Sistem Mikroprosesor dalam Bahasa Rakitan (Assembly)"

Copied!
16
0
0

Teks penuh

(1)

MODUL KE

11

Sistem Mikroprosesor (3 sks)

MATERI KULIAH :

Perancangan program sederhana untuk sistem mikroprosesor dalam bahasa rakitan (assembly) untuk menjumlahkan/mengurangkan dua bilangan heksa pada dua lokasi berbeda, menjumlahkan/mengurangkan lebih dari dua bilangan heksa pada beberapa lokasi alamat berbeda, serta program sederhana (penjumlahan dan pengurangan) sebagai pengantar program menggunakan looping.

POKOK BAHASAN :

Desain Program Sederhana

untuk Sistem Mikroprosesor dalam

Bahasa Rakitan (Assembly)

Oleh Ir. INDRAGUNG PRIYAMBODO, MT.

11.1 PROGRAM UNTUK PENJUMLAHAN/PENGURANGAN DUA

BILANGAN HEKSA PADA DUA LOKASI BERBEDA

Misalnya untuk menjumlahkan bilangan heksadesimal yang disimpan di dua lokasi/alamat yang berbeda.

Sebagai contoh :

LATIHAN 11.1

Program sistem mikroprosesor (dalam bahasa rakitan/assembly) untuk menjumlahkan dua bilangan heksadesimal yang masing-masing berada di alamat 50H dan alamat 51H, kemudian hasil penjumlahannya disimpan di alamat 52H.

Atau dapat juga dengan kalimat, untuk menjumlahkan isi dari alamat 50H dan 51H, kemudian hasilnya disimpan di alamat 52H, serta diasumsikan bahwa hasil penjumlahannya tidak menghasilkan carry.

SOLUSI :

Persoalan tersebut dapat ditulis secara sederhana seperti berikut ini.

(50H) + (51H)  52H

(2)

Untuk tahap awal, langkah-langkah penyelesaiannya seperti berikut ini. 1. Masukkan isi alamat 50H  ke Accumulator (Register A)

2. Amankan data di Acc. (isi alamat 50H)  ke Register B

3. Masukkan data berikutnya (isi alamat 51H)  ke Accumulator (ke Reg. A)

4. Jumlahkan data di Acc. (A) = (50H) dengan data di Reg. B (= isi alamat 51H), dan hasilnya langsung disimpan di Acc. (A).

5. Pindahkan/Copykan data di Acc (A) ke alamat 52H. Dengan demikian programnya seperti berikut ini.

ALTERNATIF 11.1.1

Byte Kode Operasi

Instruksi

(Mnemonic) Deskripsi (Artinya) 3 1 3 1 3 1 3A 47 3A 80 32 76 LDA MOV LDA ADD STA HLT 50H B, A 51H B 52H (50H)  A ; Jadi (A) = (50H)

(A)  B ; Jadi (B) = (50H), diamankan (51H)  A ; Jadi (A) = (51H)

(A) + (B)  A ; (A) = (50H) + (51H) (A)  52H ; (52H) = (A) = (50H)+(51H) Stop program ini

12 Byte  membutuhkan 12 lokasi untuk program, misalnya dari 00 H s/d 0B H

Bila ditulis lengkap dengan lokasi alamat beserta isinya dalam hexadesimal seperti berikut ini. Alamat Memori (Heksadesimal) Instruksi (Mnemonic) Isi Memori (Heksadesimal) 00 01 02 03 04 05 06 07 08 09 0A 0B LDA MOV LDA ADD STA HLT 50H B, A 51H B 52H 3A 50 00 47 3A 51 00 80 32 52 00 76

(3)

ALTERNATIF 11.1.2

Alternatif lainnya adalah menggunakan LXI, dan selanjutnya isi dari HL dinaikkan terus. Cara ini terlihat diawalnya lebih sulit, tetapi untuk penjumlahan berulang-ulang menjadi jauh lebih mudah dan dapat diarahkan ke bentuk looping.

Berikut ini adalah alternatif 11.1.2 Byte Kode

Operasi

Instruksi

(Mnemonic) Deskripsi (Artinya) 3 1 1 1 1 1 1 21 7E 23 86 23 77 76 LXI MOV INX ADD INX MOV HLT H, 50H A, M H M H M, A 50H  HL ; Jadi (HL) = 0050 H = M (M=(HL)=50H)  A ; (A) = (M) = (50H) (HL) + 1  HL ; (HL) = 0051 H = M (A)+(M=51H)  A; ( A)=(50H)+(51H) (HL) + 1  HL ; (HL) = 0052 H = M (A)M=52H; (52H)=(A)=(50H)+(51H) Stop program ini

9 Byte  membutuhkan 9 lokasi untuk program, misalnya dari 00 H s/d 08 H

Bila ditulis lengkap dengan lokasi alamat beserta isinya dalam hexadesimal seperti berikut ini. Alamat Memori (Heksadesimal) Instruksi (Mnemonic) Isi Memori (Heksadesimal) 00 01 02 03 04 05 06 07 08 LXI MOV INX ADD INX MOV HLT H, 50H A, M H M H M, A 21 50 00 7E 23 86 23 77 76

(4)

ALTERNATIF 11.1.3

Alternatif ini sama dengan alternatif 11.1.2, tetapi saat memindahkan/meng-copykan data dari Accumulator ke alamat 52H, langsung mengggunakan STA 52H.

Berikut ini adalah alternatif 11.1.3 Byte Kode

Operasi

Instruksi

(Mnemonic) Deskripsi (Artinya) 3 1 1 1 3 1 21 7E 23 86 32 76 LXI MOV INX ADD STA HLT H, 50H A, M H M 52H 50H  HL ; Jadi (HL) = 0050 H = M (M=(HL)=50H)  A ; (A) = (M) = (50H) (HL) + 1  HL ; (HL) = 0051 H = M (A)+(M=51H)  A; ( A)=(50H)+(51H) (A)52H; (52H)=(A)=(50H)+(51H) Stop program ini

10 Byte  membutuhkan 10 lokasi untuk program, misalnya dari 00 H s/d 09 H Bila ditulis lengkap dengan lokasi alamat beserta isinya dalam hexadesimal seperti berikut ini. Alamat Memori (Heksadesimal) Instruksi (Mnemonic) Isi Memori (Heksadesimal) 00 01 02 03 04 05 06 07 08 09 LXI MOV INX ADD STA HLT H, 50H A, M H M 52H 21 50 00 7E 23 86 32 50 00 76

Ternyata walaupun kesan pertamanya program tersebut lebih pendek, ternyata tidak demikian, justru tetap lebih panjang, dan lebih lama eksekusinya.

LATIHAN SOAL

S.13.1.1 Desainlah program sistem mikroprosesor menggunakan bahasa rakitan/assembly untuk mengurangkan dua bilangan heksadesimal yang berada di lokasi alamat 51H dengan bilangan di lokasi 52H, kemudian hasilnya disimpan di alamat di alamat 53 H, serta diasumsikan bahwa hasilnya tidak negatif.

(5)

11.2 PROGRAM UNTUK PENJUMLAHAN/PENGURANGAN LEBIH

DARI DUA BILANGAN HEKSA DI BEBERAPA LOKASI BERBEDA

Misalnya untuk menjumlahkan bilangan heksadesimal yang disimpan di lima lokasi/alamat yang berbeda.

Sebagai contoh :

LATIHAN 11.2.

Program sistem mikroprosesor (dalam bahasa rakitan/assembly) untuk menjumlahkan lima bilangan heksadesimal yang masing-masing berada di alamat 41H s/d 45H, kemudian hasil penjumlahannya disimpan di alamat 46H.

Atau dapat juga dengan kalimat, untuk menjumlahkan isi dari alamat 41H dan 45H, kemudian hasilnya disimpan di alamat 46H, serta diasumsikan bahwa hasil penjumlahannya tidak menghasilkan carry.

SOLUSI :

Persoalan tersebut dapat ditulis secara sederhana seperti berikut ini.

(41H) + (42H) + (43H) + (44H) + (45H)  46H

Dengan demikian programnya seperti berikut ini.

ALTERNATIF 11.2.1

Byte Kode Operasi

Instruksi

(Mnemonic) Deskripsi (Artinya) 3 1 3 1 1 3 1 1 3 1 1 3 1 3 1 3A 47 3A 80 47 3A 80 47 3A 80 47 3A 80 32 76 LDA MOV LDA ADD MOV LDA ADD MOV LDA ADD MOV LDA ADD STA HLT 41H B, A 42H B B, A 43H B B, A 44H B B, A 45H B 46H (41H)  A ; Jadi (A) = (41H)

(A)  B ; Jadi (B) = (41H), diamankan (42H)  A ; Jadi (A) = (42H)

(A) + (B)  A ; (A) = (41H) + (42H) (A)  B; Jadi (B) = hasil yg diamankan (43H)  A ; Jadi (A) = (43H)

(A) + (B)  A ; (A) = hasil tadi + (43H) (A)  B; Jadi (B) = hasil yg diamankan (44H)  A ; Jadi (A) = (44H)

(A) + (B)  A ; (A) = hasil tadi + (44H) (A)  B; Jadi (B) = hasil yg diamankan (45H)  A ; Jadi (A) = (45H)

(A) + (B)  A ; (A) = hasil tadi + (45H) (A)  46H ; (46H) = (41H)+s/d+(45H) Stop program ini

(6)

Dari hasil program tersebut, terlihat adanya tiga instruksi berulang yaitu MOV B,A kemudian LDA XXH, dan ADD B.

Program tersebut walaupun berulang, tetapi tidak dapat dibuat looping karena berulangnya tidak persis sama, yaitu adalanya instruksi LDA XXH, nilai XX nya berbeda-beda.

Program tersebut bila ditulis lengkap sesuai format bakunya, dengan lokasi alamat beserta isinya dalam hexadesimal seperti berikut ini.

Alamat Memori (Heksadesimal) Instruksi (Mnemonic) Isi Memori (Heksadesimal) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F 10 11 12 13 14 15 16 17 18 19 1A LDA MOV LDA ADD MOV LDA ADD MOV LDA ADD MOV LDA ADD STA HLT 41H B, A 42H B B, A 43H B B, A 44H B B, A 45H B 46H 3A 41 00 47 3A 42 00 80 47 3A 43 00 80 47 3A 44 00 80 47 3A 45 00 80 32 46 00 76

(7)

ALTERNATIF 11.2.2

Alternatif lainnya adalah menggunakan LXI, dan selanjutnya isi dari HL dinaikkan terus. Cara ini terlihat diawalnya lebih sulit, tetapi dengan penjumlahan berulang-ulang akan menjadi jauh lebih mudah dan dapat diarahkan ke bentuk looping.

Kemudian disini diperkenalkan inisiasi untuk mengosongkan/mengenolkan Accumulator, yaitu menggunakan instruksi

SUB A : (A) – (A)  A atau XRA A : (A) exor (A)  A

Berikut ini adalah alternatif 11.2.2 Byte Kode

Operasi

Instruksi

(Mnemonic) Deskripsi (Artinya) 1 3 1 1 1 1 1 1 1 1 1 1 1 1 97 21 86 23 86 23 86 23 86 23 86 23 77 76 SUB LXI ADD INX ADD INX ADD INX ADD INX ADD INX MOV HLT A H, 41H M H M H M H M H M H M, A

Clear (A) dan Carry

41H  HL ; Jadi (HL) = 0041 H = M (A)+(M=41H)  A; ( A)=00+(41H) (HL) + 1  HL ; (HL) = 0042 H = M (A)+(M=42H)  A; ( A)=(41H)+(42H) (HL) + 1  HL ; (HL) = 0043 H = M (A)+(M=43H)  A; ( A)=hasil +(43H) (HL) + 1  HL ; (HL) = 0044 H = M (A)+(M=44H)  A; ( A)=hasil +(44H) (HL) + 1  HL ; (HL) = 0045 H = M (A)+(M=45H)  A; ( A)=hasil +(45H) (HL) + 1  HL ; (HL) = 0046 H = M (A)M=46H; (46H)=(A)=hasil akhir Stop program ini

16 Byte  hanya membutuhkan 16 lokasi untuk program, misalnya 00 H s/d 0F H

Dari hasil program tersebut, terlihat adanya dua instruksi berulang dan SAMA PERSIS yaitu INX H dan ADD M. Dengan adanya pengulangan yang sama persis tersebut, maka program tersebut dapat disederhanakan menggunakan LOOPING. Khusus hal ini akan dibahas kemudian.

(8)

Program tersebut bila ditulis lengkap sesuai format bakunya, dengan lokasi alamat beserta isinya dalam hexadesimal seperti berikut ini.

Alamat Memori (Heksadesimal) Instruksi (Mnemonic) Isi Memori (Heksadesimal) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F SUB LXI ADD INX ADD INX ADD INX ADD INX ADD INX MOV HLT A H, 41H M H M H M H M H M H M, A 97 21 41 00 86 23 86 23 86 23 86 23 86 23 77 76

LATIHAN SOAL

Desainlah program sistem mikroprosesor menggunakan bahasa rakitan/assembly untuk melakukan operasi berikut ini.

S.11.2.1 Memindahkan/mengcopykan isi lokasi alamat 41H ke alamat 42 H s/d 46 H. S.11.2.2 Menjumlahkan beberapa bilangan heksadesimal yang berada di lokasi

alamat 51H s/d 5AH, kemudian hasilnya disimpan di alamat di alamat 61 H s/d 63 H, serta diasumsikan bahwa hasil akhirnya tidak mengandung carry. S.11.2.3 Mengurangkan beberapa bilangan heksadesimal yang berada di lokasi

alamat 51H s/d 5AH, kemudian hasilnya disimpan di alamat di alamat 61 H s/d 63 H, serta diasumsikan bahwa hasil akhirnya tidak negatif.

(9)

11.3 PROGRAM UNTUK PENJUMLAHAN/PENGURANGAN

BEBERAPA BILANGAN HEKSA DI BEBERAPA LOKASI BERBEDA

DENGAN MENGGUNAKAN LOOPING (JUMP)

Misalnya untuk menjumlahkan bilangan heksadesimal yang disimpan di beberapa lokasi/alamat yang berbeda (dimulai dengan lima lokasi berbeda seperti pada latihan 11.2, kemudian sampai dengan di banyak lokasi alamat.yang berurutan) Sebagai contoh :

LATIHAN 11.3.1

Program sistem mikroprosesor (dalam bahasa rakitan/assembly) untuk menjumlahkan isi alamat 41H s/d 45H, kemudian hasilnya disimpan di alamat 46H, serta diasumsikan bahwa hasil penjumlahannya tidak menghasilkan carry. Kemudian informasi tentang banyaknya bilangan yang dijumlahkan berada di alamat 40H, ini berarti isi alamat 40H adalah 05.

SOLUSI :

Persoalan tersebut seperti pada latihan sebelumnya, dapat ditulis secara sederhana seperti berikut ini.

(40H) = 05 H

(41H) + (42H) + (43H) + (44H) + (45H)  46H

Dengan demikian programnya seperti berikut ini.

ALTERNATIF 11.3.1.1

Byte Kode Operasi

Instruksi

(Mnemonic) Deskripsi (Artinya) 1 3 1 1 1 1 3 3 1 97 21 46 23 86 05 C2 32 76 JUML : SUB LXI MOV INX ADD DCR JNZ STA HLT A H, 40H B, M H M B JUML 46H

Clear (A) dan Carry

40H  HL ; Jadi (HL) = 0040 = M (M=(HL)) B; (B)=05, sebagai counter (HL) + 1  HL ; (HL) = 0041 = M (A) + (M=41)  A

(B) – 1  B ; Isi B berkurang 1

Jump jika (B) ≠ 0  Jump if ZERO = 0 (A)  46H

(10)

15 Byte  membutuhkan 15 lokasi untuk program, misalnya dari 00 H s/d 0E H

Bila ditulis lengkap dengan lokasi alamat beserta isinya dalam hexadesimal seperti berikut ini. Alamat Memori (Heksadesimal) Instruksi (Mnemonic) Isi Memori (Heksadesimal) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E JUML : SUB LXI MOV INX ADD DCR JNZ STA HLT A H, 40H B, M H M B JUML 46H 97 21 40 00 46 23 86 05 C2 05 00 32 46 00 76

Yang perlu diingat adalah :

Jump Not Carry selalu berpasangan dengan suatu nilai !

Pengertian sederhananya dari JNZ JUML adalah : Bila isi B ≠ 0 maka akan loncat/jump ke alamat 05 H (tempat tanda JUML tersebut).

Kemudian instruksi STA 46H, dapat diganti denganinstruksi yang lebih cepat (pendek), yaitu INX H dilanjutkan dengan MOV M,A

(11)

Sebagai bahan latihan, berikut ini diberikan alternatif lainnya untuk solusi program nomor 1, misalnya anda tidak boleh menggunakan instruksi JNZ, tetapi boleh MENGGUNAKAN INSTRUKSI  JZ, seperti berikut ini.

Byte Kode Operasi

Instruksi

(Mnemonic) Deskripsi (Artinya) 1 3 1 1 1 3 1 3 1 3 1 97 21 46 23 86 32 05 CA 23 C3 76 JUML: STOP : SUB LXI MOV INX ADD STA DCR JZ INX JMP HLT A H, 41H B, M H M 46H B STOP H JUML

Clear (A) dan Carry

41H  HL ; Jadi (HL) = 0041 H = M (M = (HL))  B ; sebagai counter (HL) + 1  HL ; (HL) = 0042 H = M (A) + (M)  A

(A)  46H; Hasil akhir

(B) – 1  B ; Isi B berkurang 1

Jump jika (B) = 0  Jump if ZERO = 1 (HL) + 1  HL ; (HL) = 0043 H = M Jump to JUML

Stop program ini

19 Byte  membutuhkan 19 lokasi untuk program, misalnya dari 00 H s/d 12 H Bila ditulis lengkap dengan lokasi alamat beserta isinya dalam hexadesimal seperti berikut ini. Alamat Memori (Heksadesimal) Instruksi (Mnemonic) Isi Memori (Heksadesimal)

(12)

00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F 10 11 12 JUML: STOP : SUB LXI MOV INX ADD STA DCR JZ NX JMP HLT A H, 41H B, M H M 46H B STOP H JUML 97 21 41 00 46 23 86 32 46 00 05 CA 12 00 23 C3 06 00 76

ALTERNATIF 11.3.1.3

Sebagai bahan latihan, jika informasi tentang banyaknya data yang dijumlahkan tidak disimpan di suatu lokasi/alamat, dalam hal ini tidak disimpan di alamat 40H. Maka harus langsung dimasukkan ke dalam mikroprosesor, dalam hal ini langsung dimasukkan ke suatu register dengan instruksi MVI.

Byte Kode Operasi

Instruksi

(Mnemonic) Deskripsi (Artinya) 1 2 3 1 1 1 3 3 1 97 06 21 23 86 05 C2 32 76 JUML : SUB MVI LXI INX ADD DCR JNZ STA HLT A B, 05H H, 40H H M B JUML 46H

Clear (A) dan Carry

05H  B; (B)=05, sebagai counter 40H  HL ; Jadi (HL) = 0040 = M (HL) + 1  HL ; (HL) = 0041 = M (A) + (M=41)  A

(B) – 1  B ; Isi B berkurang 1

Jump jika (B) ≠ 0  Jump if ZERO = 0 (A)  46H

(13)

16 Byte  membutuhkan 16 lokasi untuk program, misalnya dari 00 H s/d 0F H Bila ditulis lengkap dengan lokasi alamat beserta isinya dalam hexadesimal seperti berikut ini. Alamat Memori (Heksadesimal) Instruksi (Mnemonic) Isi Memori (Heksadesimal) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F JUML : SUB MVI LXI INX ADD DCR JNZ STA HLT A B, 05H H, 40H H M B JUML 46H 97 06 05 21 40 00 23 86 05 C2 06 00 32 46 00 76

LATIHAN 11.3.2

Program sistem mikroprosesor (dalam bahasa rakitan/assembly) untuk menjumlahkan isi alamat 43H s/d 7AH, kemudian hasilnya disimpan di alamat 40H, serta diasumsikan bahwa hasil penjumlahannya tidak menghasilkan carry.

SOLUSI :

Persoalan tersebut seperti pada latihan sebelumnya, dapat ditulis secara sederhana seperti berikut ini.

(43H) + ... + (7AH)  40H

Terlebih dahulu harus dihitung banyaknya bilangan atau lokasi yang dijumlahkan, yaitu = 7AH – 43H + 1H = 28 H.

(14)

lokasi 42H.

Dengan demikian programnya seperti berikut ini.

Byte Kode Operasi

Instruksi

(Mnemonic) Deskripsi (Artinya) 1 2 3 1 1 1 3 3 1 97 06 21 23 86 05 C2 32 76 JUML : SUB MVI LXI INX ADD DCR JNZ STA HLT A B, 28H H, 42H H M B JUML 40H

Clear (A) dan Carry

28H  B; (B)=28, sebagai counter 42H  HL ; Jadi (HL) = 0042 = M (HL) + 1  HL ; (HL) = 0043 = M (A) + (M=43)  A

(B) – 1  B ; Isi B berkurang 1

Jump jika (B) ≠ 0  Jump if ZERO = 0 (A)  40H

Stop program ini

16 Byte  membutuhkan 16 lokasi untuk program, misalnya dari 00 H s/d 0F H Bila ditulis lengkap dengan lokasi alamat beserta isinya dalam hexadesimal seperti berikut ini. Alamat Memori (Heksadesimal) Instruksi (Mnemonic) Isi Memori (Heksadesimal)

(15)

00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F JUML : SUB MVI LXI INX ADD DCR JNZ STA HLT A B, 28H H, 42H H M B JUML 40H 97 06 28 21 42 00 23 86 05 C2 05 00 32 40 00 76

LATIHAN SOAL

Desainlah program sistem mikroprosesor menggunakan bahasa rakitan/assembly untuk melakukan operasi berikut ini.

S.11.3.1 Menjumlahkan isi alamat 2DH s/d 62H serta diasumsikan bahwa hasil penjumlahannya tidak menghasilkan carry, kemudian hasilnya disimpan di : a. di alamat 2CH.

b. di alamat 63H s/d 7A H.

S.11.3.2 Mengurangkan isi alamat 2DH s/d 62H (jadi (2DH) – (2EH) – (2FH) dst.nya), serta diasumsikan bahwa hasil akhir pengurangannya bukan bilangan negatif. Kemudian hasilnya disimpan di :

a. di alamat 2CH.

b. di alamat 63H s/d 7A H.

S.11.3.3 Menjumlahkan isi alamat 52H s/d 70H serta diasumsikan bahwa hasil penjumlahannya tidak menghasilkan carry, kemudian hasilnya disimpan di

(16)

alamat 60H s/d 69 H. Tetapi sebelum hasil penjumlahan tadi disimpan di alamat 60 H s/d 69 H, maka data yang ada di alamat tersebut (di 60 H s/d 69 H) harus diamankan terlebih dahulu ke alamat 91 H s/d 9A H.

DAFTAR PUSTAKA

[1] Lance A. Leventhal, Introduction to Microprocessors : Software, Hardware,

Programming, Prentice Hall,1978.

[2] Pasahow, Edward, J. , Microprocessor and Microcomputer Interfacing for

Electronics Technicians, McGraw-Hill, New York, 1981.

[3] Chris H. Pappas dan Willian H. Murray III, 80386 Mikroprocessor Handbook, Osborne McGraw-Hill, 1988

[4] Avtar Singh dan Walter A. Triebel, The 8088 Microprocessor : Programmnig,

Interfacing, Software, Hardware, and Applications, Prentice Hall, International

Editions, 1989

[5] Charles M.Gilmore , Microprocessors:Principles and Applications, Glencoe/McGraw-Hill, 2nd International Ed. , 1995

[6] Rodnay Azks (alih bahasa : S.H. Nasution), From Chips to Systems : An

Introduction to Microprocessors ( Dari Chip ke Sistem : Pengantar Mikroprosesor),

Sybec Inc., 1981 (Penerbit Erlangga, 1986).

[7] Harry Garland (alih bahasa : M. Barmawi dan M.O. Tjia), Introduction to

Microprocessor System Design ( Pengantar Desain Sistem Mikroprosesor),

McGraw-Hill Inc., 1979 (Penerbit Erlangga, 1984).

[8] Barry B. Brey , Microprocessors and Peripherals : Hardware,Software,Interfacing,

Referensi

Dokumen terkait

Berapa porsi makanan yang ibu berikan kepada anak setiap kali makan.. Memberikan makanan sebanyak-banyaknya

Peneliti an yang di lakukan oleh Wayan Adi Vi r aw an (2013) dengan judul “Pengar uh Har ga, Kuali tas Pr oduk Dan Cit r a Mer ek Ter hadap Keputusan Pembelian (Studi Pada Mahasi

Nanang Fatah, Konsep Manajemen Berbasis Sekolah dan Dewan Sekolah , Bandung: Pustaka Bai Quraisy, 2007, h.. Perencanaan yang dilakukan kepala Madrasah dan para wakilnya

Sedangkan untuk mereka yang sedang ingin merintis bisnis, usaha rental mobil bisa menjadi pilihan.. Memulai usaha sampingan

Jenis kalimat yang kedua adalah “kalimat majemuk”, yang terdiri atas dua klausa atau lebih, dan tersusun sedemikian rupa sehingga klausa-klausa itu hanya memiliki satu satuan

Cakupan imunisasi HB 0-7 hari di Kabupaten Bantul menurut penelitian ini adalah 73,7%. Terdapat perbedaan cakupan imunisasi HB 0-7 hari masing- masing puskesmas berdasarkan data

Bertitik tolak dari urgennya pelestarian seni wayang dan pembuatan produk seni ukir yang bernilai tinggi, maka peneliti membuat sebuah mahakarya baru yang menggabungkan

Berdasarkan latar belakang diatas, maka permasalahan dari penelitian ini adalah untuk mengetahui faktor – faktor apa saja yang mempengaruhi ketertarikan Ibu terhadap