Kamis, 05 Maret 2015

Tentang Mesin SAP-1 - Perangkat Instruksi


Setelah kita mempelajari arsitektu SAP-1, kita akan mempelajari tentang perangkat instruksi di SAP-1. Sebelum operasi komputer dimulai, instruksi-instruksi harus dimasukan langkah demi langkah ke dalam memori. Sebelum dapat memprogram sebuah komputer, kita harus mempelajari terlebih dahulu perangkat instruksi. Perangkat instruksi komputer SAP-1 adalah sebagai berikut:

LDA
LDA memrupakan singkatan dari Load The Accumulator (isilah akumulator). Instruksi LDA yang lengkap mengandung alamat hexadesimal dari data yang hendak diisikan. Misal LDA FH artinya “isilah akumulator dengan isi dari lokasi memori FH”. Umpamanya R8 = 1111 0000 maka eksekusi LDA 8H menghasilkan A = 1111 0000

ADD
Instruksi ADD yang lengkap mengandung alamat dari kata yang hendak ditambahkan. Misalnya ADD 9H berarti “tambahkan isi dari lokasi memori 9H pada isi akumulator”, hasil penjumlahan ini akan menggantikan isi akumulator semula
Contoh A = 0000 0010 dan R9 = 0000 0011, selama instruksi ADD 9H dilaksanakan R9 diisikan ke dalam register B sehingga B = 0000 0011, dan pada waktu bersamaan bagian penjumlahan-pengurangan melakukan penjumlahan A dan B, yang menghasilkan SUM = 0000 0101 dan hasil jumlah ini diisikan kedalam akumulator sehingga A = 0000 0101

SUB
Instruksi SUB yang lengkap mengandung alamat dari kata yang hendak dikurangkan. Misalnya SUB CH berarti “kurangkan isi dari lokasi memori CH pada isi akumulator”, hasil kurangkan ini akan menggantikan isi akumulator semula
Contoh A = 0000 0111 dan RC = 0000 0011, selama instruksi SUB CH dilaksanakan RC diisikan ke dalam register B sehingga B = 0000 0011, dan pada waktu bersamaan bagian penjumlahan-pengurangan melakukan pengurangandari  A dan B, yang menghasilkan DIFF = 0000 0100 dan hasil pengurangan ini diisikan kedalam akumulator sehingga A = 0000 0100

OUT
Instruksi OUT memberitahu kepada komputer SAP-1 untuk memindahkan isi akumulator ke bandar keluaran (output port). Sesudah intruksi OUT dilaksanakan, kita dapat melihat jawaban dari persoalan yang sedang diselesaikannya

HLT
HLT adalah singkatan dari “halt” atau berhenti. Instruksi ini memberitahu pada komputer untuk berhenti memproses data. HLT menandai akhir suatu program, serupa dengan tanda titik di akhir sebuah kalimat

Instruksi Rujukan Memori
LDA, SUB, ADD disebut instruksi-instruksi rujukan memori (memory-reference instructions) karena semua instruksi yang bersangkutan menggunakan data yang tersimpan dalam memori OUT dan HLT, dipihak lain, bukan instruksi rujukan memori karena mereka tidak melibatkan data yang ada dalam memori.

Mnemonik
LDA, SUB, ADD, OUT dan HLT adalah perangkat instruksi bagi SAP-1. Instruksi singkat seperti ini disebut Mnemonic atau pembantu ingatan yang populer karena singkatan-singkatan tersebut.

8080 dan 8085
8080 adalah mikroprosesor pertama yang dipakai secara luas. Mikroprosesor ini memiliki 72 instruksi. 8085 merupakan pengembangan dari 8080. Untuk membuat SAP menjadi komputer yang berguna dan praktis, instruksi SAP harus dibuat kompatibel ke atas dengan peringkat instruksi 8080/8085

CONTOH 10-1
Berikut ini adalah sebuah program SAP-1 dalam bentuk mnemonik
Alamat
Mnemonik
0H
LDA 9H
1H
ADD AH
2H
ADD BH
3H
SUB CH
4H
OUT
5H
HLT
Dalam memori dengan alamat selanjutnya adalah
Alamat
Data
6H
FFH
7H
FFH
8H
FFH
9H
01H
AH
02H
BH
03H
CH
04H
DH
FFH
EH
FFH
FH
FFH
Apa yang dilakukan setiap instruksi?

Jawaban

Program tersebut terdapat pada bagian memori yang rendah, yaitu terletak pada lokasi dengan alamay 0H sampai 5H. Pelaksaan instruksi pertama adalah mengisi akumulator dengan isi dari lokasi memori 9H, dengan ini isi akumulator menjadi A = 01H. Instruksi kedua adalah menambahkan  isi lokasi AH ke isi akumulator sehingga A = 01H + 02 H = 03H.  Yang ketiga adalah menambahkan isi BH ke akumulator sehingga A = 03H + 03H = 06H. Instruksi SUB akan mengurangkan isi lokasi memori CH untuk menghasilkan A = 06H – 04H = 02H. Isntruksi OUT memindahkan isi akumulator kepada bandar keluaran, dengan demikian peraga biner menyajikan angka 0000 0010 dan instruksi HLT menghentikan permrosesan data

sumber : Malvino Brown, Digital Computer Electronics 3rd Edition

Tentang Mesin SAP-1 - Arsitektur


Di post pertama ini saya akan menulis tentang rangkuman penjelasan dari mesin SAP-1.

SAP (Simple as Possible) dirancang untuk memperkenalkan semua gagasan penting dibalik operasi komputer tanpa membenamkan kedalam kerumitan yang tak perlu. SAP-1 adalah  merupakan tahap pertama dalam evolusi ke arah pengembangan komputer-komputer modern. Mesipun primitif, pemahaman SAP-1 merupakan suatu langkah besar bagi pemula



Gambar 10.1 memperlihatkan arsitektur dari SAP-1, sebuah komputer berorganisasi bus. Semua keluaran register menuju W merupakan saklar tiga keadaan, yng memungkinkan transfer data secara teratur. Semua keluaran register yang lain hanya memiliki 2 keadaan ; keluaran-keluaran ini secara kontinu menggerakan kotak-kotak yang disambungkan kepadanya. Susunan pada gambar 10-1 menonjolkan fungsi-fungsi register yang dipakai dalam SAP-1.

Berikut ini adalah uraian singkat dari setiap kotak diagram:

Pencacah Program
Pencacah program merupakan bagian dari unit kendali, mencacah dari 0000 sampai 0001. Tugasnya adalah mengirimkan memori alamat dari instruksi berikutnya yang akan diambil dan dilaksanakan
Pencacah program direset ke 0000 setiap kali sebelum komputer dijalankan. Ketika komputer bekerja, pencacah program mengirimkan alamat 0000 ke memori. Kemudian pencacah program meningkatkan cacahannya menjadi 0001. Setelah instriksi pertama diambil dan dieksekusi, pencacah program mengirimkan alamat 0001 ke memori. Pencacah program kembali meningkatkan angka pencacahnya. Sesudah instruksi kedua diambil dan dieksekusi, pencacah program mengirimkan alamat 0010 ke memori. Dengan demikian, pencacah program dapat menentukan iinstruksi berikutnya yang akan diambil dan dieksekusi.

Masukan dan MAR
Di bawah pencacah program adalah blok masukan dan MAR(Memori address register). MAR adalah bagian dari SAP-1. Selama komputer bekerja, alamat dalam pencacah program ditahan (latched) pada MAR. Sejenak kemudian, MAR mengirimkan alamat 4 bit ini kedala RAM, dimana operasi membaca dilaksanakan.

RAM
Selama komputer beroprasi, RAM menerima alamat 4-bit dari MAR dan operasi-membaca dilaksanakan. Dalam proses ini, instruksi dan kata-kata yang tersimpan dalam RAM ditempatkan pada bus W untuk digunakan olhe beberapa bagian lain dari komputer.

Register Instruksi
Register instruksi merupakan bagiand ari unit kendali. Untuk mengambil sebuah instruksi dari memori, komputer melakukan operasi membaca memori. Dala operasi ini isi dari lokasi memori yang ditunjuk alamatnya ditempatkan pada bus W. Pada waktu yang sama, register instruksi disiapkan untuk pengisian pada tepi positif dari sinyal clock berikutnya

Pengendali-Pengurut
Sebelum komputer bekerja, sinyal-sinyal CLR dan CLR masing-masing dikirmkan ke pencacah program dan register instruksi. Sebagai akibatnya, pencacah program direset ke 0000 dan bersamaan ini instruksi terakhir dalam register instruksi dihapus

Akumulator
Akumulator adalah sebuah register bufer yang menyimpan jawaban sementara selama komputer beroprasi

Penjumlah-Pengurang
SAP-1 menggunakan sebuah penjumlah-pengurang komplemen 2. Bila Su berharga renfah, maka keluaran jumlah dari penjumlah pengurang dalam gambar 10.1 adalah S = A + B . Apabila Su tinggi, keluarannya berupa selisih A = A + B’

Register B
Register B adalah register bufer yang lain diantara register-register bufer yang ada. Register ini digunakan dalam operasi aritmetik.

Register Keluaran
Pada akhir operasi komputer, akumulator berisi jawaban dari persoalan yang diselesaikan , lalu jawaban akan dipindahkan ke register keluaran. Register keluaran sering disebut output port karena data yang diproses dapat menginggalkan komputer melalui register ini.

Peraga biner
Peraga biner adalah suatu barisan yang terdiri dari 8 buah LED. Oeh karena itu setiap LED dihubungkan dengan sebuah flip-flop dari port output, masukan dari peraga biner akan menyajikan isi dari bandar keluaran. Dengan demikian, setelah kita memindahkan suatu jawaban dari akumlator ke bandar keluaran, kita dapat melihat jawaban itu ke dala bentuk biner.

Rangkuman
Unit kendali SAP-1 mengandung pencacah program, register instruksi, dan pengendali-pengurut yang menghasilkan kata kendali, sinyal-sinyal CLEAR, dan sinyal detak. ALU SAP-1 terdiri dari sebuah akumulator, sebuah penjumlah-pengurang, dan sebuah register B. Memori SAP-1 memiliki MAR dan sebuah RAM 16 X 8. Unit I/O mengandung saklar pemrograman masukan, bandar keluaran, dan peraga biner.


sumber : Malvino Brown, Digital Computer Electronics 3rd Edition