Anda di halaman 1dari 26

LAPORAN

Register Dan Rancangan Rangkaian Register

Tugas

Disusun untuk Memenuhi Tugas Mata Kuliah : Logika Digital dan Sistem Digital

Disusun Oleh :

Maratun Solehah 18.11.0017


Andika Riski P 18.11.0036
Delta Ehza Mahendra 18.11.0047

PROGRAM STUDI TEKNIK INFORMATIKA

SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER AMIKOM


PURWOKERTO 2019
KATA PENGANTAR

Puji syukur alhamdulillah kami panjatkan ke hadirat Tuhan Yang Maha Esa, karena telah
melimpahkan rahmat-Nya berupa kesempatan dan pengetahuan sehingga laporan ini bisa selesai
pada waktunya. Laporan yang berjudul “Register Dan Rancangan Rangkaian Register” disusun
untuk memenuhi tugas mata kuliah Logika Digital dan Sistem Digital oleh Bapak Agus
Pramono, M. T.

Terima kasih juga kami ucapkan kepada teman-teman yang telah berkontribusi dengan
memberikan ide-idenya sehingga laporan ini bisa disusun dengan baik dan rapi.

Kami berharap semoga laporan ini bisa menambah pengetahuan para pembaca. Namun
terlepas dari itu, kami memahami bahwa laporan ini masih jauh dari kata sempurna, sehingga
kami sangat mengharapkan kritik serta saran yang bersifat membangun demi terciptanya
makalah selanjutnya yang lebih baik lagi.
1.2 Rumusan Masalah

 Apakah itu Register

 Apakah fungsi dari Register

 Apa saja jenis-jenis Register

1.3 Tujuan penulisan

1. Sebagai bahan pembelajaran untuk lebih mengenal apa itu register

2. Untuk mengetahui fungsi-fungsi, jenis-jenis, kegunaan register

3. Untuk memperdalam pengetahuan tentang register dalam hal penerapannya


Pengertian register
Register adalah kumpulan elemen-elemen memori yang bekerja bersama sebagai satu unit.
Register dapat dibentuk dari rangkaian logika sekuensial yang dibentuk dari flip-flop.

Register merupakan sebagian memori dari mikroprosessor yang dapat diakses dengan kecepatan
yang sangat tinggi. Dalam melakukan pekerjaannya mikroprosessor selalu menggunakan register-
register sebagai perantaranya sehingga register dapat diibaratkan sebagai kaki dan tangannya dari
mikroprosessor.

Dengan kata lain, Register adalah sekumpulan sel biner yang dipakai untuk menyimpan
informasi yang disajikan dalam kode-kode biner. Penulisan (pemuatan) informasi itu tidak lain
daripada penyetelan keadaan kumpulan flip-flop dalam register itu secara serentak sebagai satu
kesatuan. Setiap flip-flop dalam register membentuk satu sel dan dapat menyimpan 1 angka biner
(binary digit, bit). Satu register yang tersusun atas n sel dapat menyimpan n bit data yang dapat
menyatakan salah satu dari 2n macam kode yang dapat dibentuk dari n bit tersebut, yang untuk
data desimal dapat berharga dari 0 sampai dengan 2n-1. Register 8 bit, misalnya, dapat menyimpan
salah satu dari 256 macam kode atau harga desimal 0 sampai dengan 255. Register dapat
menyimpan informasi dalam kode biner dan menampilkannya kembali dan dikatakan dapat
melakukan operasi baca dan tulis.

Segment Register
Segment register merupakan register yang berfungsi untuk membuat alamat memori untuk data
yang akan disimpan kedalam register, sehingga mudah dalam pencarian dan pengaksesan data.
Pada mode operasi nyata (real mode) segment register akan berada pada posisi operasi protect
mode, sehingga data yang akan disimpan, benar-benar terlindungi. Terdapat 4 bagian kecil lagi
dalam segment register, yang tiap bagian memiliki fungi yang berbeda pula, yaitu:

1. Code Segment (Register CS) yang berfungsi untuk menunjukkan alamat dari instruksi selanjutnya
pada mikroprosessor.
2. Data Segment (Register DS) yang memiliki fungsi untuk menunjukkan alamat data pada
pengiriman / transfer register.
3. Stack Segment (Register SS) yang memiliki fungsi pemanggilan (CALL) dan pengarahan ke
program utama (RET) pada operasi stack.
4. Extra Segment (Register ES) sebagai memori tambahan untuk operasi string pada CX di general
purpose register.
Pointer Register
Pointer register merupakan register yang berfungsi sebagai memori penyimpanan offset dari suatu
relative address. Pointer register mampu menunjukkan alamat dari sebuah data pada lokasi
memori, dan digunakan saat ada perpindahan data dari dan ke memori, operasi stack baik PUSH
atau POP dan alamat dari sebuah instruksi pada mikroprosessor. Terdapat 3 jenis pointer register,
yaitu:

1. Register IP (Instruction Pointer), yang menunjukkan alamat instruksi atau baris perintah dalam
program.
2. Register SP (Stack Pointer), yang menunjukkan byte terakhir pada operasi stack.
3. Register BP (Base Pointer), yang memiliki fungsi yang lebih kurang sama dengan register BX yaitu
membaca dan menulis data secara langsung dari atau ke memori.
4. Index Register

Index register merupakan register yang berfungsi untuk melakukan operasi (membaca dan
menulis) string. Terdapat dua register dalam index register, yaitu Source (lokasi sumber) Index
dan Destination (tujuan) Index.

Flag Register
Flag Register berfungsi untuk menunjukkan status sesaat dari mikroprosesor. Bit-bit pada flag
register akan mengalami perubahan, tergantung proses yang baru saja berlangsung. Bit-bit tersebut
adalah sebagai berikut:

1. C (carry): mengindikasikan ada/tidaknya bawaan (carry) setelah operasi pengurangan. C = 1


berarti ada bawaan, C = 0 berarti tidak ada bawaan. Bit C berfungsi mengidentifikasi kesalahan
(error) pada beberapa program dan prosedur (procedure).

2. P (parity): mengindikasikan jumlah bit dalam suatu data. P = 0 berarti paritasnya ganjil, P = 1
berarti paritasnya genap. Paritas dapat digunakan untuk pengecekan kesalahan pengiriman data.

3. A (auxiliary carry): mengindikasikan ada/tidaknya bawaan (carry) pada bit ke-3 dan ke-4
setelah operasi pengurangan. A=1 berarti ada bawaan, A=0 berarti tidak ada bawaan. Bit A ini
relatif jarang digunakan dalam pemrograman.

4. Z (zero) : mengindikasikan apakah hasil suatu operasi aritmatika atau logika bernilai nol atau
bukan. Bila Z = 1 berarti hasilnya nol dan Z = 0 berarti hasilnya bukan nol. Bit Z ini hampir
sama dengan bit C, yakni berfungsi untuk mengidentifikasi kesalahan dalam suatu program.

5. S (sign) : mengindikasikan apakah hasil suatu operasi aritmatika atau logika positif atau
negatif. Bila S = 1 berarti hasil negatif dan S = 0 berarti hasilnya positif.

6. T (trap) : bila di set 1, dimungkinkan melakukan debugging (penelusuran kesalahan).


7. I (interrupt) : mengendalikan operasi interupsi perangkat keras. Bila I = 1 berarti pin INTR
enable (bisa digunakan), bila I = 0 berarti INTR disable (tidak bisa digunakan). Untuk
mengendalikannya dapat dilakukan dengan instruksi STI (mengeset I=1) dan CLI (mereset I=0).

8. D (direction) : mengendalikan arah pencacahan (increment atau decrement) DI dan SI pada


operasi string. Bila D = 1 arah pencacahan adalah turun (decrement), bila D = 0 pencacahan naik
(increment). Untuk mengendalikannya bisa dengan instruksi STD (mengeset D=1) dan CLD
(mereset D=0).

9. O (overflow) : mengindikasikan apakah hasil operasi penjumlahan atau pengurangan


melampaui kapasitas mesin atau tidak.

10. IOPL (input-output privilege level) : digunakan untuk operasi protected mode untuk memilih
tingkat keistimewaan (privilege level) piranti masuk-keluaran.

11. NT (nested task) : mengindikasikan apakah operasi yang sedang dilakukan digandeng
(nested) dengan operasi lain pada operasi protected mode.

12. RF (resume) : digunakan saat debugging untuk mengendalikan kelanjutan eksekusi.

13. VF (virtual mode) : memilih operasi virtual mode pada operasi protected mode.

14. AC (alignment check) : untuk mengecek apakah suatu data word atau doubleword dialamati
ke memori yang bukan data word atau bukan doubleword.

Susunan Flags Register 8088

Ø PF <Parity Flag>.

Digunakan untuk menunjukkan paritas bilangan. Bit ini akan bernilai 1 bila bilangan yang
dihasilkan merupakan bilangan genap.

Ø DF <Direction Flag>

Digunakan pada operasi string untuk menunjukkan arah proses.

Ø IF <Interrupt Enable Flag>

CPU akan mengabaikan interupsi yang terjadi jika bit ini 0.


Ø TF <Trap Flag>

Digunakan terutama untuk Debugging, dengan operasi step by step.

Ø AF <Auxiliary Flag>

Digunakan oleh operasi BCD, seperti pada perintah AAA.

Ø NT <Nested Task>

Digunakan pada prosesor 80286 dan 80386 untuk menjaga jalannya interupsi yang terjadi secara
beruntun.

Ø IOPL <I/O Protection level>

Flag ini terdiri atas 2 bit dan digunakan pada prosesor 80286 dan 80386 untuk mode proteksi.

Pada prosesor 80286 dan 80386 keatas terdapat beberapa tambahan pada flags register, yaitu :

· PE <Protection Enable>

Digunakan untuk mengaktifkan mode proteksi. flag ini akan bernilai 1 pada mode proteksi dan 0
pada mode real.

· MP <Monitor Coprosesor>

Digunakan bersama flag TS untuk menangani terjadinya intruksi WAIT.

· EM <Emulate Coprosesor>

Flag ini digunakan untuk mensimulasikan coprosesor 80287 atau 80387.

· TS <Task Switched>

Flag ini tersedia pada 80286 keatas.

· ET <Extension Type>

Flag ini digunakan untuk menentukan jenis coprosesor 80287 atau 80387.

· RF <Resume Flag>

Register ini hanya terdapat pada prosesor 80386 keatas.

· VF <Virtual 8086 Mode>


Bila flag ini bernilai 1 pada saat mode proteksi, mikroprosesor akan memungkinkan
dijalankannya aplikasi mode real pada mode proteksi. Register ini hanya terdapat pada 80386
keatas

. General Purpose Register

General Purpose adalah register-register serbaguna, sering dimanfaatkan untuk keperlua-


keperluan lain yang bukan merupakan fungsi khasnya dan untuk menampung secara sementara
data-data yang akan diolah, sebelum diambil dan diproses oleh ALU (Arithmetic and Logical
Unit), walaupun demikian ada juga instruksi-instruksi tertentu yang mengharuskan
penggunaanregister-register secara spesifik (sesuai fungsi sebenarnya), yang mempunyai 16 bit,
dan dapat digunakan penuh 16 bit (1 word = 1 kata) atau 8 bit (1 byte = 1 karakter) saja.

Jenis-jenis general purpose register dapat dijelaskan sebagai berikut :

AX (16 bit), terdiri dari AH (high byte/8 bit), AL (low byte/8 bit)Secara khusus sebagai
Accumulator dan register serbaguna yang berfungsi sebagai masukan, atau menampung hasil
proses / perhitungan (add, sub,mul, dan div) dan sering untuk menyimpan data sementara.

Banyak instruksi yang dioptimasikan unjuk kerjanya jika beroperasi pada register

accumulator. Pengoperasian data yang disimpan di accumulator sedikit lebih cepat dibanding
bila data disimpan di register lain. Pada operasi pembagian, jika bilangan pembagi besarnya 16
bit, bilangan yang dibagi ditampung di pasangan register DX:AX. Setelah pembagian hasil
ditampung di AX sedang sisa hasil bagi di DX.

Bila bilangan pembagi besarnya 8 bit, bilangan yang dibagi ditempatkandi AX. Setelah
pembagian, hasil bagi ditempatkan di AL sedang sisa hasil bagi di AH.

Pada operasi perkalian, accumulator menampung bilangan yang akan dikali-kan. Hasil perkalian
ditempatkan di register AX. Pada operasi I/O ke dan dari port, accumulator menampung data
yang akan ditransfer.

BX (16 bit), terdiri dari BH (high byte.bit), AL (low byte/8 bit)

Secara spesifik sebagai Base juga dan register serbaguna yang merupakan salah satu dari dua
register base Addressing mode (penunjuk basis alamat),

yang dapat mengambil atau menulis langsung dari/ke memory dengan segment DS (Data
Segment) serta dapat dipakai sebagai pointer pada suatu basis data misalnya.
CX (16 bit), terdiri dari CH (high byte.bit), CL (low byte/8 bit)

Secara spesifik sebagai Counter untuk meletakkan jumlah lompatan pada

LOOP yang dilakukan, misal sebagai penunjuk berapa banyak perhitungan

dilakukan. Berfungsi untuk menampung cacah perulangan suatu operasi

(loop, string, shift, dan rotate). Register ini dapat dipakai sebagai

penyimpan data sementara.

DX (16 bit), terdiri dari DH (high byte.bit), DL (low byte/8 bit)

Secara spesifik sebagai Data juga sebagai register serbaguna yang

digunakan sebagai penampung data tertentu (karakter, pointer,

penentuan disk).

4 tugas pokok register DX :

Mmbantu AX dalam proses perkalian dan pembagian, terutama perkalian

dan pembagian 16 bit

DX merupakan register offset dari DS

Menunjukkan nomor port pada operasi port

Dipakai sebagai penampung sementara data. Dipakai berpasangan dengan

register AX, operasi perkalian dan pembagian 16 bit. Pada operasi

I/O ke dan dari port, DX menampung port yang akan diakses.

AX / BX / CX / DX

15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00

----------------------------------- ---------------------------------------
AH / BH / CH / DH

AL / BL / CL / DL

Dari fungsi-fungsi register AX, BX, CX, DX dapat digolongkan sebagai register 'Data' karena
kegunaan dan pemanfaatannya yang cenderung ke penampungan data, selain memiliki fungsi
spesifik tetapi dapat saling tergantung

INDEX REGISTER

Register jenis pointer dan register index merupakan register-register yang memuat alamat
offset dari segment-segment tertentu, yang terdiri dari stack pointer (SP) dan base pointer (BP)
yang digunakan sebagai pemegang nilai offset dari stack segment, sedangkan source index (SI)

dan destination index (DI) berisi nilai offset dari data segment.

Instruction pointer (IP) merupakan pemegang nilai offset dari code

segment dan fungsinya mirip dengan program counter (PC) pada prosesor-prosesor 8 bit. Hanya
bedanya, program counter langsung mengalamati instruksi-instruksi yang ada dimemori dengan
nilainya sendiri, IP harus bekerja sama dengan register CS untuk dapat membentuk pengalamatan
20 bit dalam format segment:offset.

Register yang dipakai untuk melakukan operasi string dan sering digunakan

untuk menulis dan membaca ke atau dari memory seperti halnya BX dan BP

(Base Pointer), yang terdiri dari register :

1. SI (Source Index)

Dipakai sebagai pointer atau tempat penyimpan data. Registerini sering

dipakai sebagai pointer untuk menunjuk sebuah item (indexing) dalam

satu kesatuan data. Pada operasi string, SI dipakai untuk menunjuk ke

byte atau word dalam sebuah source string.


2. DI (Destination Index)

Dipakai sebagai pointer atau tempat penyimpanan data. Sering dipakai

sebagai pointer untuk menunjuk sebuah item (indexing) dalam satu

kesatuan data.

Pada operasi string, DI dipakai untuk menunjuk ke byte atau word dalam

sebuah destination string merupakan suatu komposisi register 16 bit, dimana komposisi bitnya
mengecek apakah sesuatu berfungsi atau tidak. Adalah register 16 bit yang bit-bitnya mengontrol
berbagai instruksi dan merefleksikan status processor pada saat itu. Untuk real mode aktualnya
ada 9 flag, untuk 80286 protected mode ada 11 flag, dan untuk 80386 ada 13 flag.

Contohnya, Interrupt Flag mengecek apakah pada saat operasi Interrupt

sedang aktif atau tidak, bila tidak aktif Interrupt tidak akan dijalankan.Carry Flag mengecek
apakah pada saat operasi terjadi kesalahan atau tidak, Sign Flag menunjukkan apakah suatu
bilangan bertanda atau tidak dan sebagainya.

Komposisi 16 bit (flag bits)

15 14 13 12 11 10 9 8 7 6 5 4 3 2
1 0

OF DF IF TF SF ZF AF PF CF

Tabel Register Status (Flag)

Nama Flag Fungsi RESET (0) Arti SET (1) Arti


CF Carry Flag NC No Carry CV Carry
PF Parity Flag PO Parity Odd PE Parity Even
AF Auxiliary Carry Flag NA No Aux. Carry AC Aux. Carry
ZF Zero Flag NZ Non Zero ZR Zero
SF Sign Flag PL Plus NG Negative
OF Overflow Flag NV No Overflow OV Overflow
IF Interrupt Flag DI Disable Interupt EI Enable Interupt
DF Direction Flag UP Upward DN Downward
Carry Flag (CF) akan 'set' (menjadi logika '1', tinggi), apabila terjadi

'bawaan' (carry) atau 'pinjaman' (borrow) dalam suatu hasil proses

perhitungan (arithmetic) pada Most Significant Bit (MSB, bit paling

berbobot). Jika hal-hal itu tidak terjadi maka CF akan 'reset' (logika

'0', rendah). Kalau dalam suatu instruksi, terjadi hasil yang menunjukkan

bahwa sistem pengecekan paritas adalah 'paritas genap' (even parity), maka

PF akan 'set'. Bila yang terjadi 'paritas ganjil' (odd parity), PF akan

'reset'.

Auxiliary Carry Flag dipakai untuk menunjukkan hasil perhitungan pada

byte rendah dari suatu bilangan binary 16 bit. Jika terjadi 'bawaan' atau

'pinjaman' dari nibble bawah (low nibble) ke nibble atas (high nibble), .

AF akan 'set', sebaliknya AF akan di 'reset'. Zero Flag akan 'set' kalau

dalam suatu proses perhitungan di hasilkan nilai nol. Bila hasilnya bukan nol, ZF akan 'reset'.

SF atau 'Sign Flag' adalah bit yang akan mendeteksi suatu bilangan sebagai bilangan positif
atau bilangan negatif. Hal ini dilakukan dengan melihat MSB dari bilangan tersebut. Apabila MSB
menunjukkan nilai '1' (set), maka bilangan itu adalah negatif, jika '0' (reset), bilangan

positif.

OF adalah 'Overflow Flag', berguna untuk menunjukkan bahwa telah terjadi 'overflow' yaitu
jumlah bit sebagai hasil suatu proses perhitungan telah melampaui batas yang diperkenankan.
Mikroprosesor 8088 mempunyai kemampuan untuk bekerja dalam mode 'langkah tunggal' (single-
step), yaitu semua instruksi dilaksanakan dengan cara satu demi satu. Mode ini dimungkinkan
dengan jalan membuat TF (Trap Flag) masuk ke logika '1' atau 'set'. Bagi seorang programmer,
mode ini akan sangat berguna dalam pekerjaan 'debugging'.

Interrupt Flag (IF) untuk mendeteksi adanya permintaan interupsi dari peralatan-peralatan luar.
Bila flag ini ada dalam keadaan set, maka pendeteksian interupsi oleh 8088 akan aktif, akan tetapi
jika IF dalam keadaan reset, semua permintaan interupsi yang "maskable" (tidak mutlak) akan
diacuhkan.

DF adalah 'Direction Flag', berguna menentukan arah dari operasi-operasi 'string' (untaian string),
yaitu bila DF di 'set', maka operasi string akan

mengurutkan alamat dari atas ke bawah, akan tetapi, bila flag ini di-'reset', pengalamatan diurutkan
dari alamat rendah ke alamat tinggi.

Macam-macam register

Berdasarkan fungsinya , register yaitu ada register buffer dan register shift

1. Register Buffer

Gambar 1 Rangkaian buffer 4 D - FF yang tersambung dalam sebuah rangkaian serial in, serial
out shift register.

Register buffer berfungsi untuk menyimpan kata digital. Setiap datang pulsa

clock, data dari input D dari masing - masing FF akan di transfer kepada Q output. Pada
awalnya, isi dari register diset 0 dengan mengirimkan clock pada clear. Jika 1 merupakan
input dari FF yang pertama, maka pada pulsa berikutnya 1 akan di trasnfer ke output
FF1 dan sekaligus menjadi input FF2.
a.) Register Buffer terkendali

Register Buffer Terkendali adalah register buffer yang ditambah dengan beberapa gerbang
logika dasar AND, OR, dan NOT. Gambar rangkaian menunjukkan sebuah Register buffer
terkendali dengan CLR aktif tinggi. Apabila CLR = 1, maka akan terjadi reset pada flip-flop dan
data yang tersimpan (Q) menjadi 0000. dan ketika CLR = 0, register siap beroperasi kembali.
Sinyal kendali LOAD adalah input kendali yang menentukan operasi rangkaian.Ketika LOAD =
0, semua input data tidak diizinkan masuk, artinya flip-flop mengisolasi input data atau menahan
semua data yang ada di dalamnya. Dengan kata lain, register tidak berubah selama LOAD = 0.
Ketika LOAD = 1, semua input data akan diterima oleh register. Ketika LOAD kembali = 0, maka
input data yang diterima register tadi akan tersimpan dengan aman tanpa gangguan perubahan
input.

2. Register Geser

Adalah suatu register dimana informasi dapat bergeser (digeserkan). Dalam register geser flip-
flop saling dikoneksi, sehingga isinya dapat digeserkan dari satu flip-flop ke flip-flop yang lain,
kekiri atau kekanan atas perintah denyut lonceng (Clock). Register dapat disusun secara langsung
dengan flip-flop. Sebuah flip-flop (FF) dapat menyimpan (store) atau mengingat (memory) atau
mencatat (register) data 1 bit.
Pada dasarnya, kita dapat membuat register geser (shift register) dengan menggunakan
berbagai macam flip-flop, seperti flip-flop RS, JK, D, dan T. Yang penting, rangkaian ini bersifat
sinkronus sekuensial, yang berarti bahwa kondisi outputnya ditentukan oleh input, output sekarang
(current output) dan setiap output berubah pada waktu yang bersamaan (konotasi dari sinkronus)
untuk men-jamin integritas data.

Operasi pergeseran data oleh register membuktikan bahwa suatu data biner dapat berpindah
tempat, dari satu tempat menuju tempat yang lainnya (flip-flop yang lainnya). Perpindahan terjadi
berdasarkan waktu. Register Geser atau Shift Register dapat memindahkan bit-bit yang tersimpan
ke kiri atau ke kanan. Pergeseran bit ini penting dalam operasi aritmatika dan operasi logika yang
dipakai dalam mikroprosesor (komputer).

Dasar dari register geser adalah menggeser data yang disimpannya. Sebagai contoh, sebuah
register geser 4-bit akan menggeser data biner yang saling berurutan sebanyak 4 posisi.

Proses bergesernya data yang masuk ke dalam register terjadi sejalan dengan sinyal pendetak.
Cepat-lambatnya pewaktuan dalam pergeseran dientukan oleh sinyal pendetak yang digunakan.
Setiap kali sinyal pendetak berdenyut, maka data yang tersimpan akan bergeser satu posisi. Jika
pulsa pendetak berdenyut sekali lagi, maka data yang tersimpan akan bergeser satu posisi lagi.
Begitulah dan seterusnya.

Contoh kasus register geser dalam pekerjaan sehari-hari yaitu terdapat pada kalkulator.
Bila kita memasukan masing-masing digit pada papan tombol, angka pada peraga akan bergeser
ke kiri. Dengan kata lain, untuk memasukkan angka 268 kita harus mengerjakan hal sebagai
berikut.

Pertama, kita akan menekan dan melepaskan 2 pada papan tombol, maka 2 muncul pada
peraga pada posisi palng kanan. Selanjutnya, kita menekan dan melepaskan 6 pada papan tombol
yang menyebabkan 2 bergeser satu posisi ke kiri, yang memungkinkan 6 muncul pada posisi paling
kanan, 26 muncul pada peraga. Akhirnya, kita menekan dan melepaskan 8 pada papan tombol, 268
muncul pada peraga.

2.3 Jenis register

Jenis register dapat pula diklasifikasikan berdasarkan cara data masuk ke dalam suatu register
untuk di simpan dan cara data dikeluarkan dari register tersebut. Untuk memasuukan dan
mengeluarkan ke atau dari register secara seraial atau paralel. Cara serial berarti data di masukkan
atau dikeluarkan ke atau dari register secara berurutan bit demi bit. Sedangkan cara paralel berarti
data yang terdiri dari beberapa bit dimasukkan atau dikeluarkan ke atau dari register secara
serempak. Berdasarkan hal itu maka dikenal 4 jenis register, yaitu :
1) Serial Input Serial Output (SISO)
2) Serial Input Paralel Output (SIPO)
3) Paralel In Serial Output (PISO)
4) Paralel Input Paralel Output (PIPO

1. SERIAL IN SERIAL OUT (SISO)

Gambar Register SISO yang menggunakan JK FF

Prinsip kerja:

Informasi/data dimasukan melalui word in dan akan dikeluarkan jika ada denyut lonceng
berlalu dari 1 ke 0. Karena jalan keluarnya flip-flop satu dihubungkan kepada jalan masuk flip-
flop berikutnya, maka informasi didalam register akan digrser ke kanan selama tebing dari denyut
lonceng (Clock).

Tabel Kebenaran (Misal masuknya 1101)


Clock ke Word in Q1 Q2 Q3 Q4
0 0 0 0 0 0
1 1 1 0 0 0
2 0 0 1 0 0
3 1 1 0 1 0
4 1 1 1 0 1

Register geser SISO ada dua macam yaitu:

a) Shift Right Register (SRR)/Register geser kanan

b) Shift Left Register (SLR)/Register geser kiri

c) Shift Control Register dapat berfungsi sebagai SSR maupun SLR


Rangkaian Shift control adalah sebagi berikut:

Rangkaian ini untuk mengaktifkan geser kanan/kiri yang ditentukan oleh SC. Jika SC=1, maka
akan mengaktifkan SLR. Jika SC=0, maka akan mengaktifkan SRR. Gambar rangkaian
selengkapnya adalah sebagai berikut:

Keterangan:

Jika SC=0,maka input geser kanan akan aktif. Keluaran NAND diumpamakan ke input DFF1 dan
setelah denyut lonceng berlaku (saat tebing depan), maka informasi diteruskan ke output Q1. Dan
output Q1 terhubung langsung keoutput DFF2 berikutnya sehingga dengan proses ini terjadi
pergeseran ke kanan.

TABEL KEBENARAN (jika input 1101)


Clock ke Input Q1 Q2 Q3 Q4
0 0 0 0 0 0
1 1 1 0 0 0
2 1 1 1 0 0
3 0 0 1 1 0
4 1 1 0 1 1

Informasi digit digeser kekanan setiap ada perubahan pulsa clock tebing atas. Geser kanan
berfungsi sebagai operasi aritmatika yaitu pembagi dua untuk tiap-tiap flip-flop.
Jika SC = 1 , maka akan mengaktifkan input geser kiri. Output NAND masuk ke input D-FF4 dan
setelah diberi pulsa clock informasi dikeluarkan melalui Q4 dan keluaran Q4 dihubungkan ke input
D-FF3, keluaran D-FF3 dimasukan ke D-FF berikutnya, sehingga dengan demikian terjadi
pergeseran informasi bit ke arah kiri.

TABEL KEBENARAN (jika input 1101)


Clock ke Input Q1 Q2 Q3 Q4
0 0 0 0 0 0
1 1 0 0 0 1
2 1 0 0 1 1
3 0 0 1 1 0
4 1 1 1 0 1

Register geser kiri berfungsi sebagai operasi aritmatika yaitu sebagai pengali dua untuk tiap-tiap
flip-flop.

2. SERIAL IN PARALEL OUT (SIPO)

Adalah register geser dengan masukan data secara serial dan keluaran data secara parelel.

Gambar rangkaiannya adalah sebagai berikut: (SIPO menggunakan D-FF)

Cara kerja:

Masukan-masukan data secara deret akan dikeluarkan oleh D-FF setelah masukan denyut
lonceng dari 0 ke 1. Keluaran data/informasi serial akan dapat dibaca secara paralel setelah
diberikan satu komando (Read Out). Bila dijalan masuk Read Out diberi logik 0, maka semua
keluaran AND adalah 0 dan bila Read Out diberi logik 1, maka pintu-pintu AND menghubung
langsungkan sinyal-sinyal yang ada di Q masing-masing flip-flop.

Contoh: Bila masukan data 1101

TABEL KEBENARANNYA:
Read Out Clock Input Q1 Q2Q3 Q4 A B CD
0 0 0 0000 0000
0 1 1 1000 0000
0 2 1 1100 0000
0 3 0 0110 0000
0 4 1 1011 0000
1 1011 1011

3. PARALEL IN PARALEL OUT (PIPO)

Adalah register geser dengan masukan data secara jajar/paralel dan keluaran jajar/paralel.

Gambara rangkaiannya adalah sebagai berikut: (PIPO menggunakan D-FF)


Cara kerja:

Sebelum dimasuki data rangkaian direset dulu agar keluaran Q semuanya 0. Setelah itu data
dimasukkan secara paralel pada input D-FF dan data akan diloloskan keluar secara paralel setelah
flip-flop mendapat pulsa clock dari 0 ke 1.

Contoh:

TABEL KEBENARAN:
Clock D1 D2 D3D4 QD QC QBQA
0 1101 0000
1 1101 1101
2 1001 1001
3 0001 0001

4. PARALEL IN SERIAL OUT (PISO)


Adalah register geser dengan masukan data secara paralel dan dikeluarkan secara
deret/serial.

Gambar rangkaian register PISO menggunakan D-FF adalah sebagai berikut:


Rangkaian diatas merupakan register geser dengan panjang kata 4 bit. Semua jalan masuk clock
dihubungkan jajar. Data-data yang ada di A, B, C, D dimasukkan ke flip-flop secara serempak,
apabila dijalan masuk Data Load diberi logik 1.

Cara Kerja:

 Mula-mula jalan masuk Data Load = 0, maka semua pintu NAND mengeluarkan 1,
sehingga jalan masuk set dan rerset semuanya 1 berarti bahwa jalan masuk set dan reset
tidak berpengaruh.
 Jika Data Load = 1, maka semua input paralel akan dilewatkan oleh NAND. Misal jalan
masuk A=1, maka pintu NAND 1 mengeluarkan 0 adapun pintu NAND 2 mengeluarkan
1. Dengan demikian flip-flop diset sehingga menjadi Q=1. Karena flip-flop yang lainpun
dihubungkan dengan cara yang sama, maka mereka juga mengoper informasi pada saat
Data Load diberi logik 1. Setelah informasi berada didalam register, Data Load diberi logik
0. Informasi akan dapat dikeluarkan dari register dengan cara memasukkan denyut
lonceng, denyut-demi denyut keluar deret/seri. Untuk keperluan ini jalan masuk D
dihubungkan kepada keluaran Q.
 Ada juga register yang dapat digunakan sebagai Shift register SISO maupun PIPO dengan
bantuan suatu control sbb:

Input Control = 0, berfungsi sebagai register geser SISO

Input Control = 1, berfungsi sebagai register geser PIPO


Data IC Preset Reset
0 1 1 0
1 1 0 1
0 0 1 1
1 0 1 1

Rangkaian kontrol diatas dapat disimbolkan sbb:


Rangkaian selengkapnya adalah sbb:

Catatan:

Jika IC=0, maka input yang dimasukan ke D0, D1, D2, D3 tidak mempengaruhi keadaan output
QA, QB, QC, QD tetapi yang mempengaruhinya adalah data yang dimasukkan ke input D-FF
secara serial, maka pada kondisi ini rangkaian akan bekerja senagai register geser SISO.

Jika IC=1, maka input yang dimasukkan ke gate D seri tidak akan mempengaruhi output, tetapi
output dipengaruhi oleh data paralel (D0, D1, D2, D3). Input dimasukkan secara serempak dan
keluaran ditunjukkan secara serempak begitu pulsa clock berguling dari 1 ke 0, maka pada kondisi
ini rangkaian akan bekerja sebagai registeer geser PIPO.
PERANCANGAN

3.1Komponen yang digunakan :


1. 4 buah IC 74LS74N
2. 1 buah gerbang AND 7408
3. 4 buah probe warna biru, orange, merah, hijau
4. Digital clock
5. Vcc
6. Switch (saklar)

3.2 Langkah kerja :


1. Siapkan 4 buah IC 74LS74N
2. Atur letak IC agar tidak terlalu rapat
3. Letakan masing-masing probe pada celah antar IC tersebut
4. Letakan vcc diatas
5. Sambungkan vcc kesalah satu kaki saklar
6. Sambungkan kaki saklar satunya ke salah satu input gerbang AND 7408
7. Kaki input gerbang AND yang satunya sambungkan ke output –Q pada IC terakhir
8. Sambungkan output gerbang AND ke input IC pertama
9. Sambungkan clock ke masing-masing IC
10. Sambungkan input pada masing-masing IC lalu hubungkan ke masing-masing probe.
11. Tekan tombol play untuk memulai rangkaian tersebut.
SIMULASI DAN PEMBAHASAN

Simulasi :

Pembahasan

a. IC 7474 merupakan sebuah ic yang didalamnya terdapat dua buah rangkaian D flip flop
jadi hanya dengan 1 ic kita akan mendapatkan 2 rangkaian D flip flop.
b. IC 7408 merupakan IC gerbang logika AND, dalam IC ini terdapat 4 gerbang logika
sekaligu tetapi dalam rangkaian ini kita hanya akan menggunakan satu gerbang logika
AND.
c. Clock adalah pulsa atau gelombang kotak yang dikeluarkan oleh suatu rangkaian secara
terus menerus.
d. Probe digunakan sebagai indicator output pada rangkaian register

Rangakaian ini merupakan rangkaian SIPO (Serial In Paralel Out). Rangkaian tersebut dapat
digunakan pada lampu lalu lintas, lampu jalanan, lampu hiasan, dll.
PENUTUP
Kesimpulan
Register adalah kumpulan elemen-elemen memori yang bekerja bersama sebagai satu
unit. Register dapat dibentuk dari rangkaian logika sekuensial yang dibentuk dari flip-flop.

Register merupakan sebagian memori dari mikroprosessor yang dapat diakses dengan kecepatan
yang sangat tinggi. Dalam melakukan pekerjaannya mikroprosessor selalu menggunakan register-
register sebagai perantaranya sehingga register dapat diibaratkan sebagai kaki dan tangannya dari
mikroprosessor.

Register terdiri dari 4 jenis, yaitu:

1) Serial Input Serial Output (SISO)


2) Serial Input Paralel Output (SIPO)
3) Paralel In Serial Output (PISO)
4) Paralel Input Paralel Output (PIPO
REFERENSI

https://www.academia.edu/ Projek_Rangkaian_Register

https://garudacyber.co.id/artikel/1486-pengertian-register-dan-jenis-jenis-register

https://zulfikardharma2050.wordpress.com/2016/05/01/register/

Anda mungkin juga menyukai