1 Program Control
Program Control
Program Control
• Instruksi biasanya di simpan dalam memori
• Ketika CPU melakukan proses, instruksi
dijemput dari memori kemudian baru
dieksekusi.
• Setiap instruksi yang dijemput dari memori,
Program Counter akan bertambah satu
(increment) untuk alamat instruksi berikutnya.
Status Bit Conditions
Status bit dikenal juga dengan Condition-code
atau Flag bit.
Status Register bit dari 8 bit ALU dengan 4 bit
status register disimbolkan dengan C, S, Z, V.
Bit yang di set atau clear dihasilkan dalam
operasi yang dikerjakan oleh ALU.
Status Bit Conditions
• Bit C (carry)
set = 1 jika C8 = 1. Clear = 0 jika carry = 0
• Bit S (Sign)
set = 1 jika F7 = 1 atau sebaliknya
• Bit Z (Zero)
set = 1 jika output yang dihasilkan ALU semuanya nol
(0) atau sebaliknya.
• Bit V (Overflow)
set = 1 jika XOR dua bit terakhir keduanya sama
dengan satu atau sebaliknya dan untuk 8 bit ALU, V
=1 jika output adalah > +127 atau < -128
Gambar : Status Register bits
A
8
8 bit ALU
C7
C8
V
Z
S
C
B
8
F7 - F0
F7
Check for zero output
8
Output F
Contoh :
Diketahui
A = 101x1100
B = 00010000
Lakukan pengecekan diantara kedua nilai
diatas dengan operasi logika AND dan tentukan
status flag (Z)!!!
Jawab :
A = 101x1100
B = 00010000
000x0000
Jika x = 0 maka Z = 1 (set)
x = 1 maka Z = 0 (Clear)
AND
Numerical Example
1.
A = 11110000
B = 00010100
Lakukan operasi A – B, kemudian tentukan
status register bit (C, S, V, Z)!
Jawab :
B = 00010100
B = 11101011
1+
11101100
A
= 11110000
B + 1 = 11101100 +
11011100
Jadi : C = 1, S = 1, V = 1, Z = 0
2. Tentukan status register bit (S, V, Z) dari
operasi A – B jika A=-16 dan B=20 !
Jawab
-16 – 20 = -36
+36 = 00100100
-36 = 11011011
1+
11011100
Jadi : Z = 0 ; S = 1 ; V = 0
Soal
1.
2.
Lakukan operasi A – B, kemudian tentukan
status register bit (C, S, V, Z)!
a. 127 – 59
b. 180 – 30
Lakukan operasi A – B, kemudian tentukan
status register bit (S, V, Z) jika A = -57 dan
B= 27!
1.
a. C=1 ; S=0 ; V=0 ; Z=0
b. C=1 ; S=1 ; V=1 ; Z=0
2.
S=1 ; V=0 ; Z=0
Program Control
• Instruksi biasanya di simpan dalam memori
• Ketika CPU melakukan proses, instruksi
dijemput dari memori kemudian baru
dieksekusi.
• Setiap instruksi yang dijemput dari memori,
Program Counter akan bertambah satu
(increment) untuk alamat instruksi berikutnya.
Status Bit Conditions
Status bit dikenal juga dengan Condition-code
atau Flag bit.
Status Register bit dari 8 bit ALU dengan 4 bit
status register disimbolkan dengan C, S, Z, V.
Bit yang di set atau clear dihasilkan dalam
operasi yang dikerjakan oleh ALU.
Status Bit Conditions
• Bit C (carry)
set = 1 jika C8 = 1. Clear = 0 jika carry = 0
• Bit S (Sign)
set = 1 jika F7 = 1 atau sebaliknya
• Bit Z (Zero)
set = 1 jika output yang dihasilkan ALU semuanya nol
(0) atau sebaliknya.
• Bit V (Overflow)
set = 1 jika XOR dua bit terakhir keduanya sama
dengan satu atau sebaliknya dan untuk 8 bit ALU, V
=1 jika output adalah > +127 atau < -128
Gambar : Status Register bits
A
8
8 bit ALU
C7
C8
V
Z
S
C
B
8
F7 - F0
F7
Check for zero output
8
Output F
Contoh :
Diketahui
A = 101x1100
B = 00010000
Lakukan pengecekan diantara kedua nilai
diatas dengan operasi logika AND dan tentukan
status flag (Z)!!!
Jawab :
A = 101x1100
B = 00010000
000x0000
Jika x = 0 maka Z = 1 (set)
x = 1 maka Z = 0 (Clear)
AND
Numerical Example
1.
A = 11110000
B = 00010100
Lakukan operasi A – B, kemudian tentukan
status register bit (C, S, V, Z)!
Jawab :
B = 00010100
B = 11101011
1+
11101100
A
= 11110000
B + 1 = 11101100 +
11011100
Jadi : C = 1, S = 1, V = 1, Z = 0
2. Tentukan status register bit (S, V, Z) dari
operasi A – B jika A=-16 dan B=20 !
Jawab
-16 – 20 = -36
+36 = 00100100
-36 = 11011011
1+
11011100
Jadi : Z = 0 ; S = 1 ; V = 0
Soal
1.
2.
Lakukan operasi A – B, kemudian tentukan
status register bit (C, S, V, Z)!
a. 127 – 59
b. 180 – 30
Lakukan operasi A – B, kemudian tentukan
status register bit (S, V, Z) jika A = -57 dan
B= 27!
1.
a. C=1 ; S=0 ; V=0 ; Z=0
b. C=1 ; S=1 ; V=1 ; Z=0
2.
S=1 ; V=0 ; Z=0