You are on page 1of 15

BAB 1 PENGENALAN KEPADA MIKROPEMPROSES DAN PENGAWAL MIKRO

1.1

SISTEM NOMBOR

1.1.1

Asas nombor yang biasa digunakan

Asas 10 (desimal)

Asas 2 (binari)

Asas 16 (hexadesimal)

NOMBOR DESIMAL
Manusia menggunakan nombor asas 10 (desimal) dalam aritmetik (pengiraan)
Nombor asas 10 mengguna 10 simbol yang berlainan iaitu 0,1,2,3,4,5,6,7,8,9

1.1.2

NOMBOR BINARI
Terdiri daripada 2 jenis simbol : 0,1
Biasanya diberi nama BIT
Ia hanya difahami oleh komputer
Dalam bidang elektronik, bit 0 bersamaan dengan 0 volt (antara 0 0.8v)
dan bit 1 bersamaan dengan 5 volt (antara 2.0v 5v).
V
1

5.0 V
LOGIC 1
2.0 V

Logik 1 2.0V 5.0V

0.8 V

Logik 0 0V 0.8V

Unused
LOGIC 0
0V

0
t

1.1.3

NOMBOR HEXADESIMAL
Sistem nombor ini digunakan untuk mewakili sistem nombor binari.
Ia memudahkan perwakilan satu jujukan nombor yang terdiri daripada
nombor binari (1001011010.....)
1

Ia menggunakan 16 simbol untuk mewakili nombor


Desimal
0
1
2
3
4
5
6
7
8

Binari
0000
0001
0010
0011
0100
0101
0110
0111
1000

Hex
0
1
2
3
4
5
6
7
8

Desimal
9
10
11
12
13
14
15

Binari
1001
1010
1011
1100
1101
1110
1111

Hex
9
A
B
C
D
E
F

1.1.4 PERTUKARAN NOMBOR


Desimal Binary :
Cara 1 : Sentiasa bahagi dengan 2 dan himpunkan bakinya
Contoh: Tukarkan 2510 kepada binari
Hasil bahagi

baki

25/2 =

12

12/2 =

6/2 =

3/2 =

1/2 =

LSB (Least Significant Bit)

MSB (Most Significant Bit)

Oleh itu 2510 = 110012

Cara 2 : Hasil tambah pemberat setiap bit


24

23

22

21

20

16

2510 = 16 + 8 + 1 = 110012

Binari Hexadesimal : Himpunkan setiap 4 bit dalam satu kumpulan


Contoh : Wakilkan 1001111101012 dalam Hex

1001

1111

0101

= 9F516

Hexadesimal Binari : Pecahkan setiap satu nombor Hex kepada 4 bit

Contoh : Tukarkan 29B16 kepada binari.

0010

1001

1011

=0010100110112 (00 di depan boleh dibuangkan 10100110112)

Desimal Hex : Tukarkan nombor decimal kepada binari dan dari binari tukar kepada Hex
Contoh : Tukarkan 69910 kepada Hex
29

28

27

26

25

24

23

22

21

20

512

256

128

64

32

16

= 2BB16 (kena tambah 00 di depan untuk jadikan 4 bit dalam satu kumpulan)

1.1.5

PERTAMBAHAN 2 NOMBOR HEX


Contoh:
+

6 B16

0110 10112

A F16

+ 1010

1 1 A16

1 0001 10102

11112

Jumlah bilangan 1 = ganjil, Pariti, P = 1

Carry, C = 1
Axiliary Carry, AC = 1

1.2

ASAS GET LOGIK

1.2.1

GET DAN (AND GATE)

1.2.2

GET ATAU (OR GATE)

1.2.3

GET TAK (NOT GATE)

1.2.4

GET EKSKLUSIF ATAU (XOR GATE)

1.2.5

GET TAK DAN (NAND GATE)

1.2.6

GET TAK ATAU (NOR GATE)

Tugasan:
a.

b.

c.

Tukarkan nombor berikut kepada nombor asas 16:


i.

110011002

ii.

45610

iii.

0011101011102

iv.

101110

v.

11100010102

vi.

110110

Tukarkan nombor berikut kepada nombor asas 2:


i.

5F6A16

ii.

12710

iii.

10110116

iv.

25510

v.

FFFF16

vi.

25610

Dapatkan keadaan bit Carry (C), Auxiliary Carry (AC) dan Pariti (P) bagi
masalah di bawah:
i.

5AHex ADD (tambah) 36Hex

ii.

9DHex ADD(tambah) ABHex

iii.

8B16 AND 9716

iv.

A616 AND C316

v.

A716 OR C116

vi.

9316 OR C716

vii. 4C16 EX-OR 8A16

viii.

2316 EX-OR EC16

ix.

Data 7816 di-ORkan dengan data 5C16 dan kemudian di-ANDkan dengan
data A716

x.

Data FA16 di-ANDkan dengan data D816 dan kemudian di-EX-ORkan


dengan data 6716

1.3

SAIZ DAN UNIT DATA

Bit

Julat 0 =>1

or 1

Nibble

Julat 0000 => 1111


Ruang 0 => 15

0
Julat 00000000 => 11111111
Ruang 0 => 255

Byte

Word

Julat 000 => 111 (16 Bit)


Ruang 0 => 65535

Most Significant Bit


(MSB)

Least Significant Bit


(LSB)
Maka, Bit : digit binari yang mempunyai nilai hanya 0 atau 1
Byte : 8 bit atau 2 nibble
Nibble : separuh Byte atau 4 bit
Word (perkataan) : 2 Byte atau 4 nibble atau 16 bit
Long Word (perkataan panjang) : 2 Word atau 4 Byte atau 32 bit

Contoh :
5 F 9 A Hex 0101 1111 1001 10102
data 16 bit atau atau data 4 nibble atau data 2 byte atau data
1 Word atau data separuh Long Word

1.3.1

SEBUTAN BAGI KAPASITI INGATAN

Kilobyte (K) : 210 Byte (1024 byte)

Megabyte (M) : 220 byte (1,048576 byte)

Gigabyte (G) : 230 byte (1,073,741,824 byte)

Terabyte (T) : 240 byte (???)

(Cuba bayangkan kapasiti pada pen-drive anda. Berapa banyak data boleh disimpan pada
kapasiti 2 G?)

1.4

ELEMEN ASAS SISTEM MIKROKOMPUTER

Memory

Output

Control

Input

Microprocessor
ALU

Microcomputer

Satu sistem mikrokomputer mempunyai komponen-komponen berikut:

1.4.1

Input

Output

Peranti simpanan

Pusat Pemprosesan

INPUT
Ia merupakan peranti yang digunakan untuk menyediakan data-data atau maklumat
untuk diproses oleh pusat pemprosesan.
Contoh: Joystick, Keyboard, Sensor, Scanner

1.4.2

OUTPUT
Ia merupakan peranti yang digunakan untuk memaparkan data-data atau maklumat
yang telah diproses oleh pusat pemprosesan.
Contoh: Monitor, Pencetak, Speaker.

1.4.3

PERANTI SIMPANAN
Ia merupakan peranti yang digunakan untuk menyimpan data-data atau maklumat
sebelum/selepas diproses oleh pusat pemprosesan.
Contoh: Hardisk, CD-ROM, RAM, ROM, Pen-drive

1.4.4

PUSAT PEMPROSESAN (CPU)


Ia merupakan unit yang utama dalam sistem mikrokomputer.
Ia merupakan unit yang menerima, memproses dan memaparkan data-data.
Ia boleh melakukan kerja-kerja seperti aritmetik, logik dan membuat keputusan.
Binaan dalaman sebuah CPU adalah seperti gambarajah blok di muka surat sebelah:

1.4.5

SAMBUNGAN ASAS SISTEM MIKROKOMPUTER

Address Bus (Bas Alatam): Talian wayar yang digunakan untuk menyalurkan data-data yang
mengandungi maklumat alamat (lokasi) bagi data yang hendak
diproses atau data yang hendak disimpan.
Data Bus (Bas Data): Talian wayar yang digunakan untuk menyalurkan data-data yang akan
diproses (dari peranti ingatan ke CPU) atau data yang sudah diproses
(dari CPU ke ingatan/output)

Control Bus (Bas Kawalan): Talian wayar yang digunakan untuk menghantar isyarat kawalan
(seperti MEMW, MEMR, IOR, IOW, interrupt and DMA)
antara CPU dengan peranti ingatan dan peranti Input/Output.

1.5

PENGENALAN KEPADA PENGAWAL MIKRO (MC)


Ia merupakan sebuah komputer yang kecil.
Di dalam MC terdapat komponen-komponen yang diperlukan untuk sebuah sistem
mikrokomputer. Ini bererti di dalamnya terdapat komponen-komponen seperti CPU,
RAM, ROM, peranti input/output (I/O).

CPU

RAM ROM

I/O
Port

Serial
Timer COM
Port

A single chip
Microcontroller

(Cuba bandingkan gambarajah blok ini dengan gambarajah blok sistem mikrokomputer
sebelum ini)

1.5.1 PERBEZAAN DI ANTARA MIKROPEMPROSES DENGAN PENGAWAL MIKRO


Mikropemproses
1. CPU berdiri bersendirian. Peranti ingatan

Pengawal Mikro (MC)


1. CPU, RAM, ROM, timer dan peranti I/O

(ROM dan RAM), timer dan peranti I/O

berada dalam satu chip tunggal

adalah berasingan.

(Embedded).

2. Pencipta sistem boleh menentukan bilangan


kapasitinya (RAM, ROM dan I/O)
3. Kapasiti ingatan dan I/O boleh ditambahkan
(expansive)
4. Untuk penggunaan am (General-purpose)

2. Kapasiti RAM,ROM dan Port untuk I/O


telah ditetapkan.
3. Sesuai untuk aktiviti yang memakan ruang,
kos dan kuasa yang banyak.
4. Untuk penggunaan khas

10

1.5.2 BINAAN DALAMAN PENGAWAL MIKRO (MC)

(ii)

(v)

(i)

(iii)

(iv)

11

1.5.3 FUNGSI-FUNGSI SESETENGAH BAHAGIAN

i.

ALU (Arithmetic Logic Unit)


Ia merupakan unit yang melakukan kerja-kerja aritmetik seperti tambah,
tolak, darab dan bahagi.
Ia juga merupakan unit yang melakukan kerja-kerja logik seperti ATAU,
DAN dan TAK.

ii.

ACC Accumulator
Ia merupakan sebuah daftar (register) untuk menyimpan data yang hendak
diproses atau sudah diproses oleh ALU untuk sementara waktu.
Oleh itu ia merupakan pintu masuk-keluar data bagi ALU.

iii.

PSW Program Statu Word Register


Daftar ini mengandungi maklumat mengenai keputusan proses yang telah
dilaksanakan oleh ALU.
Ia memberitahu pengguna sama ada keputusan yang dihasilkan oleh ALU itu
mempunyai pembawa atau tidak, pariti ganjil atau genap, mempunyai pembawa
Auxiliary atau tidak, melebihi julat atau tidak dan jalur daftar (register
bank) mana hendak dipilih.

iv.

Program Counter
Daftar ini mengandungi alamat suatu suruhan yang seterusnya bagi suatu
aturcara.
Bila sesuatu suruhan dilaksanakan, Program Counter akan memastikan alamat
di dalamnya sentiasa mengandungi alamat untuk suruhan seterusnya. Suruhan
seterusnya itu akan dilaksanakan oleh CPU apabila suruhan semasa habis
dilaksanakan.

12

v.

Stack Pointer (Penunjuk Tindan)


Daftar ini merupakan sebuah kawasan yang agak luas biasa di mana kandungan
Program Counter akan diletak padanya buat sementara waktu apabila berlaku
proses subroutine.
Daftar ini akan digunakan apabila suruhan-suruhan seperti PUSH, POP, CALL
dan RET digunakan dalam aturcara.

vi.

Daftar (Register)
Ia merupakan tempat kecil untuk menyimpan data. Data ini boleh terdiri
daripada data untuk alamat atau data untuk membuat kerja (suruhan)

Latihan:

a.

Nyatakan 4 komponen penting yang terdapat pada sebuah mikrokomputer dan terangkan
dengan ringan setiap komponen tersebut.

b.

Nyatakan fungsi-fungsi bagi komponen berikut:


i.

Bas Alamat

ii.

Bas Data

iii.

Bas Kawalan

c.

Lukiskan binaan dalaman bagi sebuah pengawal mikro dalam bentuk gambarajah blok.

d.

Nyatakan perbezaan-perbezaan yang terdapat pada mikropemproses dan pengawal


mikro.

e.

Nyatakan fungsi bagi komponen-komponen berikut yang terdapat pada sebuah pengawal
mikro:
i.

ALU

ii.

Accumulator

iii.

Program Counter

iv.

Stack Pointer

v.

Program Status Word Register

13

1.6

PROSES MELAKSANAKAN ATURCARA


Untuk proses melaksanakan aturcara, 2 fasa aktiviti akan terlibat iaitu fasa angkut
dan fasa laksana.
Komponen-komponen berikut akan terlibat dalam proses pelaksanaan satu aturcara:

CARRY
FLAG

ACCUMULATOR

ALU

Controller
Sequencer
PROGRAM
COUNTER
(PC)

CLOCK and
CONTROL
LINES

Instruction
Decoder

ADDRESS
REGISTER
(AR)

DATA
REGISTER
(DR)

HEX

00H
01H
02H
03H
04H
05H
06H
07H

ADDRESS
00000000
00000001
00000010
00000011
00000100
00000101
00000110

CODE
01110100
00010000
00100100
00000111
11110101
00110000
11110100

Contoh:

MOV A, #10H
ADD A, #07H
MOV 30H, A
MOV A, #10H

RAM

Melaksana sesuatu Aturcara

Kod Binari yang


mewakili aturcara

ATURCARA

Sebelum suatu aturcara boleh dilaksanakan, aturcara tersebut akan diletakkan pada
kandungan ingatan RAM. (Aturcara ini telah diterjemahkan kepada bahasa yang
difahami oleh MC iaitu Bahasa Mesin kod binari).
Aturcara akan dilaksanakan langkah demi langkah bermula dengan alamat pertama,
00000000B (00H).
Alamat pertama ini akan dirujuk setiap kali pengawal mikro direset.

14

Fasa Angkut
Segala aktiviti (pergerakan data) akan dikawal oleh unit Controller Sequencer. Unit
ini akan mengeluarkan isyarat kawalan untuk memastikan aktiviti-aktiviti di bawah
berjalan dengan baik dan tepat.
i. Bila MC direset, alamat pada PC akan memegang alamat pertama iaitu 00H.
ii. Alamat ini akan dihantar ke Address Register (AR = 00000000B)
iii. Kandungan PC akan bertambah 1 menjadi 01H (00000001B)
iv. Kandungan pada AR akan diletakkan pada Bas Alamat.
v. MC akan mengaktifkan isyarat BACA kepada ingatan RAM
vi. Kandungan pada lokasi terpilih pada RAM (01110100B MOV A) diletakkan pada
Bas Data dan diletakkan pada Data Register (DR = 01110100B).
vi. Opcode MOV A dinyahkodkan (ditafsirkan) iaitu menyalinkan sesuatu ke dalam
Accumulator.

Fasa Laksana
Dalam fasa ini, MC akan menyelesaikan suruhan yang telah dinyahkodkan (dalam
contoh atas iaitu suruhan MOV A). Oleh itu operand (10H = 00010000B) bagi
suruhan akan diambil dan terus diletak pada Accumulator.
i.

Kandungan PC akan dipindahkan ke AR (AR = 00000001B)

ii.

Kandungan PC akan bertambah 1 menjadi 02H (00000010B).

iii. Kandungan AR diletakkan ke dalam Bas Alamat


iv.

Isyarat BACA diaktifkan.

v.

Kandungan pada lokasi terpilih pada RAM (10H = 00010000B) diletakkan pada
Bas Data dan seterusnya diletakkan pada Data Register (DR = 00010000B).

vi.

Kandungan pada Data Register akan dipindahkan kepada Accumulator (A = 10H)

vii. Maka selesailah pelaksanaan suruhan MOV A, #10H selepas fasa Angkut dan
fasa Laksana.
Latihan:
a.

Terangkan dengan ringkas bagaimana suatu suruhan dapat dilaksanakan dalam


MC.

15

You might also like