1. PPI 8255 digunakan sebagai kendali I/O untuk mengendalikan arah putaran motor stepper
(dialamatkan pada PORT A 301H) dan dua tombol dialamatkan pada PROT B. Ketika
tombol 1 ditekan, motor stepper akan berputar ke CCW, dan sebaliknya jika tombol 2
ditekan akan berputar CW. Jika PPI dialamatkan pada lokasi 300H, tuliskan program
untuk sistem pengendali tersebut!
2. Buatlah program bahasa assembler untuk menampilkan Nama Mahasiswa, NIM, dan
Alamat!
Jawaban !
}
SS = 2* : 01
Byte Indeks Berskala :
Indeks = ECX : 001
:1
01001011
Base = EBX : 011
10001001 00000100 01001011B
89 04 4B 89044BH
Karena dalam mode instruksi 16 bit dan digunakan register 32 bit, maka
ditambahakan prefiks ukuran alamat (67H) dan prefiks ukuran register (66H) :
676689044BH
c. 8A5764 = 10001010 01010111 01100100
Bytes : 1 2 3
MOV = 100010
D = 1 (data mengalir dari R/M ke register)
W = 0 (ukuran data byte)
MOD = 01 (Ada displacement extended-sign 8-bit)
REG = 010 EDX
R/M = 111 DS:[EDI]
SS = 01 : 2*
Indeks = 100 (byte indeks berskala)
Base = 100 (byte indeks berskala)
Instruksinya : MOV 2*EDX,[2*EDI]
2. a. 8284A merupakan komponen tambahan mikroprosesor 8086/8088. Tanpa generator
clock banyak rangkaian tambahan yang dibutuhkan untuk membangkitkan clock (CLK)
pada sistem yang berbasis 8086/8088. 8284A menyediakan fungsi-fungsi atau sinyal-
sinyal dasar sebagai pembangkit clock, sinkronisasi RESET, sinkronisasi READY, dan
signal clock periferal level TTL.
Frekuensi operasi standar 5 Mhz untuk 8086/8088 didapat dengan memasang kristal
15 Mhz ke generator clock 8284A. Output PCLK terdiri dari signal yang kompatibel TTL
pada setengah frekuensi CLK.
Bagian reset 8284A sangat sederhana hanya terdiri dari satu buffer Schmitt Trigger
dan satu rangkaian flip-flop tipe-D. Jika mikroprosesor 8086/8088 direset, mikroprosesor
ini mulai mengeksekusi perangkat lunak pada lokasi memory FFFF0H (FFFF:0000)
dengan pin interrupt request disable.
b. Cara kerja mode minimum mirip dengan mikroprosesor intel 8085A, pada mode
maksimum cara kerjanya baru dan dirancang khusus untuk kerja aritmatika co-prosesor
8087.
Cara kerja Mode Minimum :
- Mode minimum mendapatkan hubungan dengan pin mode pilihan MN/MX pada
+5.0V.
- Mode minimum mengijinkan 8085A, komponenen-komponen 8-bit digunakan dengan
8086/8088 tanpa pertimbangan khusus.
Cara kerja Mode Maksimum :
- Pin MN/MX dihubungkan ke ground ( 0 volt)
- Berbeda dengan mode minimum pada beberapa sinyal kontrol harus dibangkitkan dari
luar, maka mode maksimum membutuhkan sebuah bus kontrol eksternal, bus kontrol
8288.
- Mode maksimum hanya digunakan jika ketika sistem berisi Co-prosesor eksternal
seperti aritmatika co-prosesor 8087.
3. MPU 80386 MPU 32-bit dengan memori 1 MB = 1024 kB
Dengan not fully decoded
32-bit = 4 Byte
1024 kB = 210.1010 = 220 sehingga lebar jumlah saluran alamatnya 20.
Memory space :
Awal : 0000 0000 0000 0000B = 00000H
Akhir : 1111 1111 1111 1111B = FFFFFH
RAM 1 16 kB
16 kB = 24.1010 = 214
Total memori : 11 1111 1111 1111B = 3FFFH
RAM 1 : CS0, CS1 01
RAM 2 32 kB
32 kB = 25.1010 = 215
Total memori : 111 1111 1111 1111B = 7FFFH
RAM 2 : CS0, CS1 01
EPROM 32 kB
Total memori EPROM = total memori RAM 2
CS 0
ROM 64 kB
64 kB = 26.1010 = 216
Total memori : 1111 1111 1111 1111B = FFFFH
CS 1
I/O 4 kB
4 kB = 22.1010 = 212
Total memori : 1111 1111 1111B = FFFH
CS0, CS1, CS2 100
1) Peta Memori
No. Alamat Penambahan Komponen Prediksi Alamat Awal
00000H
1. s.d. +3FFFH RAM 1 (000B) 00000H
03FFFH
10000H
2. s.d. +7FFFH RAM 2 (001B) 10000H
17FFFH
20000H
3. s.d. +7FFFH EPROM (010B) 20000H
27FFFH
30000H
4. s.d. +FFFFH ROM (011B) 30000H
3FFFFH
40000H
5. s.d. +FFFH I/O (100B) 40000H
40FFFH
41000H
Belum
- s.d. - -
digunakan
FFFFFH
2) Daftar Memori
Tabel Saluran Alamat
Peta Memori
A19 A18 A17 A16 A15 A14 A13 A12 A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0
00000H 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
RAM 1 s.d.
03FFFH 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1
10000H 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
RAM 2 s.d.
17FFFH 0 0 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
20000H 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
EPROM s.d.
27FFFH 0 0 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
30000H 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
ROM s.d.
3FFFFH 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
40000H 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
I/O s.d.
40FFFH 0 1 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1
A19 = 0 0
CS0
A18 = 0
A17 = 0 1
CS1
A16 = 0
o AD-2 : RAM 2
A19 = 0 0
CS0
A18 = 0
A17 = 0 1
CS1
A16 = 1
o AD-3 : EPROM
A19 = 0 0
A18 = 0 0 CS
A17 = 1
0
A16 = 0
o AD-4 : ROM
A19 = 0 0
A18 = 0 1 CS
A17 = 1
1
A16 = 1
o AD-5 : I/O
A19 = 0 1 CS0
A18 = 1
A17 = 0 0 CS1
A16 = 0 0 CS2
CS0
AD-1
CS1
4. #start=Stepper_motor.exe# ; header untuk memanggil device stepper motor
4. org 100h
jmp start
msg: db "Nama : Nicko Satya Pranata", 13,10
db "NIM : H1A016041", 13,10
db "Alamat : Bukit Damai Indah blok G-20 Balikpapan.",'$'
start: mov dx, msg
mov ah, 09h
int 21h
mov ah, 0
int 16h
ret
Skrinsut :