bab 1 pengenalan kepada mikropemproses ...°Łnombor asas 10 mengguna 10 simbol yang berlainan iaitu...

15
1 BAB 1 PENGENALAN KEPADA MIKROPEMPROSES DAN PENGAWAL MIKRO 1.1 SISTEM NOMBOR Asas nombor yang biasa digunakan Asas 10 (desimal) Asas 2 (binari) Asas 16 (hexadesimal) 1.1.1 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). 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.....) LOGIC 1 LOGIC 0 Unused 5.0 V 2.0 V 0.8 V 0V 0 0 1 V t Logik “1” 2.0V 5.0V Logik “0” 0V 0.8V

Upload: vudang

Post on 23-Apr-2018

278 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: BAB 1 PENGENALAN KEPADA MIKROPEMPROSES ...°Ł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 :

1

BAB 1 PENGENALAN KEPADA MIKROPEMPROSES DAN PENGAWAL MIKRO

1.1 SISTEM NOMBOR

Asas nombor yang biasa digunakan

Asas 10 (desimal)

Asas 2 (binari)

Asas 16 (hexadesimal)

1.1.1 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).

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.....)

LOGIC 1

LOGIC 0

Unused

5.0 V

2.0 V

0.8 V

0V 0 0

1V

t

Logik “1” 2.0V – 5.0V

Logik “0” 0V – 0.8V

Page 2: BAB 1 PENGENALAN KEPADA MIKROPEMPROSES ...°Ł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 :

2

Ia menggunakan 16 simbol untuk mewakili nombor

Desimal Binari Hex0 0000 01 0001 12 0010 23 0011 34 0100 45 0101 56 0110 67 0111 78 1000 8

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 1

12/2 = 6 0

6/2 = 3 0

3/2 = 1 1

1/2 = 0 1

Oleh itu 2510 = 110012

Cara 2 : Hasil tambah pemberat setiap bit

24 23 22 21 20

16 8 4 2 1

1 1 0 0 1

2510 = 16 + 8 + 1 = 110012

Binari Hexadesimal : Himpunkan setiap 4 bit dalam satu kumpulan

Contoh : Wakilkan 1001111101012 dalam Hex

1001 1111 0101

= 9 F 5

= 9F516

Desimal Binari Hex9 1001 910 1010 A11 1011 B12 1100 C13 1101 D14 1110 E15 1111 F

LSB (Least Significant Bit)

MSB (Most Significant Bit)

Page 3: BAB 1 PENGENALAN KEPADA MIKROPEMPROSES ...°Ł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 :

3

Hexadesimal Binari : Pecahkan setiap satu nombor Hex kepada 4 bit

Contoh : Tukarkan 29B16 kepada binari.

2 9 B

= 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 8 4 2 1

1 0 1 0 1 1 1 0 1 1

2 B B

= 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 11112

1 1 A16 1 0001 10102

1.2 ASAS GET LOGIK

1.2.1 GET DAN (AND GATE)

Carry, C = 1

Axiliary Carry, AC = 1

Jumlah bilangan “1” = ganjil, Pariti, P = 1

Page 4: BAB 1 PENGENALAN KEPADA MIKROPEMPROSES ...°Ł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 :

4

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)

Page 5: BAB 1 PENGENALAN KEPADA MIKROPEMPROSES ...°Ł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 :

5

1.2.6 GET TAK ATAU (NOR GATE)

Tugasan:

a. Tukarkan nombor berikut kepada nombor asas 16:

i. 110011002 ii. 45610

iii. 0011101011102 iv. 101110

v. 11100010102 vi. 110110

b. Tukarkan nombor berikut kepada nombor asas 2:

i. 5F6A16 ii. 12710

iii. 10110116 iv. 25510

v. FFFF16 vi. 25610

c. 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

Page 6: BAB 1 PENGENALAN KEPADA MIKROPEMPROSES ...°Ł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 :

6

1.3 SAIZ DAN UNIT DATA

`

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

Bit or

Nibble 0 1 0 0

Byte 1 0 1 1 0 0 0 1

Word 1 1 0 0 0 0 1 1

1 0 0 0 1 0 0 0

0 1

Most Significant Bit(MSB)

Least Significant Bit(LSB)

Julat 0 =>1

Julat 0000 => 1111 Ruang 0 => 15

Julat 00000000 => 11111111 Ruang 0 => 255

Julat 00……0 => 11……1 (16 Bit) Ruang 0 => 65535

Page 7: BAB 1 PENGENALAN KEPADA MIKROPEMPROSES ...°Ł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 :

7

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 InputControl

ALU

Microprocessor

Microcomputer

Page 8: BAB 1 PENGENALAN KEPADA MIKROPEMPROSES ...°Ł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 :

8

Satu sistem mikrokomputer mempunyai komponen-komponen berikut:

Input

Output

Peranti simpanan

Pusat Pemprosesan

1.4.1 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:

Page 9: BAB 1 PENGENALAN KEPADA MIKROPEMPROSES ...°Ł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 :

9

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)

Page 10: BAB 1 PENGENALAN KEPADA MIKROPEMPROSES ...°Ł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 :

10

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).

(Cuba bandingkan gambarajah blok ini dengan gambarajah blok sistem mikrokomputer

sebelum ini)

1.5.1 PERBEZAAN DI ANTARA MIKROPEMPROSES DENGAN PENGAWAL MIKRO

RAM ROM

I/OPort

TimerSerialCOMPort

CPU

Microcontroller

A single chip

Mikropemproses

1. CPU berdiri bersendirian. Peranti ingatan

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

adalah berasingan.

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)

Pengawal Mikro (MC)

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

berada dalam satu chip tunggal

(Embedded).

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

Page 11: BAB 1 PENGENALAN KEPADA MIKROPEMPROSES ...°Ł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 :

11

1.5.2 BINAAN DALAMAN PENGAWAL MIKRO (MC)

(i)

(ii)

(iii) (iv)

(v)

Page 12: BAB 1 PENGENALAN KEPADA MIKROPEMPROSES ...°Ł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 :

12

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.

Page 13: BAB 1 PENGENALAN KEPADA MIKROPEMPROSES ...°Ł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 :

13

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

Page 14: BAB 1 PENGENALAN KEPADA MIKROPEMPROSES ...°Ł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 :

14

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:

Melaksana sesuatu 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.

ADDRESS CODE00000000 0111010000000001 0001000000000010 0010010000000011 0000011100000100 1111010100000101 0011000000000110 11110100

RAM

HEX00H01H02H03H04H05H06H07H

MOV A, #10H

ADD A, #07H

MOV 30H, A

MOV A, #10H

ATURCARA

Contoh:

ALU

ControllerSequencer

InstructionDecoder

ACCUMULATOR

PROGRAMCOUNTER

ADDRESSREGISTER

CARRYFLAG

DATAREGISTER

CLOCK andCONTROLLINES

(AR) (DR)

(PC)

Kod Binari yangmewakili aturcara

Page 15: BAB 1 PENGENALAN KEPADA MIKROPEMPROSES ...°Ł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 :

15

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.