www.sutondo.co.cc halaman : 1
TUGAS RANGKAIAN DIGITAL
Komplementer 1, Komplementer 2, BCD (Binary Code Desimal), Gray
ASCII (American Standart Code for Information Interchange)
Disusun oleh:
NAMA : NANANG SUTONDO
NIM. : 2107200665
PROGRAM PENDIDIKAN : SISTEM KOMPUTER
SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER ADI UNGGUL BHIRAWA (STMIK-AUB) SURAKARTA 2011
A. Komplemen 1 dan Komplemen 2
Komplemen 1 dan komplemen 2 dalam bilangan biner merupakan hal yang
penting untuk membuat bilangan negative. Ada dua metode dalam membuat
bilangan negative, yaitu :
1. Dengan Komplemen 1
2. Dengan Komplemen 2
Komplemen 1.
Yaitu dengan merubah setiap bit biner 0 →1 atau dari 1 → 0
1 0 1 1 0 0 1 0
Bilangan biner
0 1 0 0 1 1 0 1
Komplemen 1
Komplemen 2
Komplemen 2 = komplemen 1 + 1
1 0 1 1 0 0 1 0
0 1 0 0 1 1 0 1
+ 1
0 1 0 0 1 1 1 0
Pengurangan bilangan biner juga dapat dilakukan dengan menggunakan
Komplemen. Terdapat dua macam komplemen pada sistem bilangan biner yaitu :
Komplemen 1 (1s complement) dan Komplemen 2 (2s complement).
Contoh pengurangan bilangan biner menggunakan komplemen 1 :
Komplemen 1 pada sistem bilangan biner dilakukan dengan mengurangkan
setiap bit dengan nilai 1, atau dengan cara mengubah setiap bit 0 menjadi 1 dan
setiap bit 1 menjadi 0. Dengan komplemen 1, hasil digit paling kiri dipindahkan
untuk ditambahkan pada bit paling kanan.
Contoh pengurangan bilangan biner menggunakan komplemen 2 :
Komplemen 2 adalah hasil dari komplemen 1 ditambah 1, misalnya
komplemen 2 dari bilangan BINER 10110 adalah 01010 (dari komplemen 1 yaitu
01001 ditambah 1). Dengan menggunakan komplemen 2, hasil digit paling kanan
dibuang, tidak digunakan.
Bilangan Biner
komplemen 1
Tambah
komplemen 2
www.sutondo.co.cc halaman : 2
B. BCD (Binary Code Desimal)
Sistem BCD (Binary Code Decimal) menterjemahkan Bilangan–bilangan
decimal dengan menggantikan setipa digit decimal menjadi 4 bit biner. Mengingat
4 digit biner dapat dibuat 16 kombinasi, maka 10 diantaranya dapat digunakan
untuk menyatakan digit decimal 0 sampai 9. Dengan ini kita memiliki pilihan kode
BCD yang luas. Salah satu pilihan yang disebut kode 8421. Sebagai contoh,
bilangan decimal 264 memerlukan 3 gugus yang masing-masing terdiri dari 4 bit
biner yang berturut-turut dari kiri (MSB) ke kanan (LSB) sebagai berikut: 0010
0110 0100 (BCD).
Pendekode (decoder) BCD ke decimal umpamakan kita ingin mendekode
suatu instruksi BCD yang diungkapkan oleh suatu digit decimal 5. Opeasi ini
dapat dilaksanakan dengan suatu gerbang AND 4 masukan yang dieksitasi oleh 4
bit BCD.
A
Perhatikan gambar 1, keluaran gerbang AND = B
1 jika masukan BCD adalah 0101 dan sama dengan
C D
Gb1. AND 4 input
Y
untuk instruksi masukan yang lain. Karena kode ini
merupakan representasi bilangan decimal 5 maka
keluaran ini dinamakan saluran atau jalur 5. Sehingga
keluaran decoder ini harus dihubungkan dengan peralatan yang dapat dibaca dan
dimengerti manusia.
Jenis-jenis rangkaian decoder
1. BCD to & 7segment Decoder
a
D
MSB
C
7447
b
a
c
f
b
Input
B
A
LSB
d
g
e
e
c f
g
d
Gb.2 BCD to Seven Segment Decoder
Kombinasi masukan biner dari jalan masukan akan diterjemahkan oleh
decoder, sehingga akan membentuk kombinasi nyala LED peraga (7 segment
LED), yang sesuai kombinasi masukan biner tersebut. Sebagai contoh, Jika
masukan biner DCBA = 0001, maka decoder akan memilih jalur keluaran
mana yang akan diaktifkan. Dalam hal ini saluran b dan c diaktifkan sehingga
lampu LED b dan C menyala dan menandakan angka 1.
www.sutondo.co.cc halaman : 3
2. Decoder BCD ke decimal
Keluarannya dihubungkan dengan tabung indikator angka. Sehingga
kombinasi angka biner akan menghidupkan lampu indikator angka yang
sesuai. Sebagai contoh D = C = B = 0 , A= 1, akan menghidupkan lampu
indikator angka 1. Lampu indikator yang menyala akan sesuai dengan angka
biner dalam jalan masuk.
Gambar 3. Decoder BCD ke Decimal
INPUT OUTPUT
D C B A 0 1 2 3 4 5 6 7 8 9
0
0
0
0
0
0
0
0
0
0
9
B
8
D
MSB
C
7442
A
LSB
7
6
5
4
Tabungan angka 3
2
1
0
Gb.3 Decoder BCD ke Desimal
0
0
0
0
1
1
1
1
0
0
0
0
1
1
0
0
1
1
0
0
0
1
0
1
0
1
0
1
0
1
1
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
BCD adalah sistem pengkodean bilangan desimal yang metodenya mirip
dengan bilangan biner biasa; hanya saja dalam proses konversi, setiap simbol dari
bilangan desimal dikonversi satu per satu, bukan secara keseluruhan seperti
konversi bilangan desimal ke biner biasa. Hal ini lebih bertujuan untuk
“menyeimbangkan” antara kurang fasihnya manusia pada umumnya untuk
www.sutondo.co.cc halaman : 4
lll
lli
melakukan proses konversi dari desimal ke biner -dan- keterbatasan komputer
yang hanya bisa mengolah bilangan biner. Untuk lebih jelas, dapat dilihat pada
contoh berikut :
Misalkan bilangan yang ingin dikonversi adalah 170
10
.
Sesuai dengan posting saya yang sebelumnya, dapat dilihat bahwa bilangan biner
dari :
1
10
—-> 0001
2 7
10
—-> 0111
2 0
10
—-> 0000
2 Tetapi, berhubung hasil yang diinginkan adalah bilangan BCD, maka basis
bilangannya tinggal ditulis sebagai berikut :
1
10
—-> 0001
BCD 7
10
—-> 0111
BCD 0
10
—-> 0000
BCD maka, nilai BCD dari 170
10
adalah 0001 0111 0000
BCD
.
Harap diperhatikan bahwa setiap simbol dari bilangan desimal dikonversi
menjadi 4 bit bilangan BCD.
Contoh lain, misalkan bilangan yang ingin dikonversi adalah 309
10
.
3
10
—–> 0011
BCD 0
10
—–> 0000
BCD 9
10
—–> 1001
BCD maka, nilai BCD dari 309
10
adalah 0011 0000 1001
BCD
.
Sebagai bahan latihan, dapat juga dicoba konversi BCD bilangan desimal
berikut :
10
10
—–> 0001 0000
BCD 441
10
—-> 0100 0100 0001
BCD 270
10
—-> 0010 0111 0000
BCD
C. Gray Code
Gray kode diciptakan oleh Frank Gray. Itu dijelaskan dalam paten yang
diberikan pada tahun 1953, namun pekerjaan itu dilakukan jauh lebih awal, paten
yang dimohonkan pada tahun 1947. Gray adalah seorang peneliti di Bell
Telephone Laboratorium, selama 1930-an dan 1940 ia dianugerahi paten banyak
untuk pekerjaan yang berkaitan dengan televisi.
www.sutondo.co.cc halaman : 5
Menurut Heath [Hea72] kode pertama kali, di Bahkan, yang digunakan
oleh Baudot untuk telegrafi pada 1870-an, meskipun hanya karena munculnya
kode komputer yang telah menjadi dikenal secara luas. Istilah "Gray kode"
kadang-kadang digunakan untuk mengacu pada setiap-jarak kode tunggal, yaitu, di
mana kata-kata kode yang berdekatan (mungkin mewakili bilangan bulat yang
berbeda dengan 1) berbeda dengan 1 dalam satu posisi digit saja. Gray
memperkenalkan apa yang sekarang kita akan panggilan jarak kode biner tunggal-
kanonik, meskipun ia menyebutkan bahwa lain kode biner jarak tunggal bisa
diperoleh dengan permuting kolom dan memutar baris dari tabel kode. Kode dari
Gray, dan ekstensi alam selain menjadi basis biner, hanya sebagian kecil yang
sangat dari semua-tunggal jarak kode. Di sini kita akan menggunakan istilah "kode
Gray" untuk merujuk pada kode Gray dan "tunggal jarak" untuk merujuk pada
kasus yang lebih umum, kita akan prihatin terutama dengan sifat dari kode Gray.
Banyak yang telah ditemukan dan ditulis tentang kode Gray di masa lalu,
melainkan berhubungan dengan algoritma elegan banyak dan sirkuit. Namun,
kekayaan materi teknis tidak pernah berkumpul bersama dan diperlakukan secara
konsisten bentuk, maka, ini mandiri Survei kode's properti tersebut, algoritma dan
sirkuit
Asal kode
Kode Gray muncul secara alami di banyak situasi. Gray bunga dalam kode
terkait dengan apa yang sekarang kita sebut konversi analog ke digital. Tujuannya
adalah untuk mengkonversi nilai integer, digambarkan sebagai voltase, menjadi
serangkaian pulsa merupakan jumlah yang sama dalam bentuk digital. Teknik,
seperti dijelaskan dalam paten Gray, adalah menggunakan tegangan yang
dikonversi untuk menggantikan suatu vertikal berkas elektron yang sedang
menyapu horizontal di layar katoda ray tabung. Layar memiliki topeng terukir di
atasnya yang hanya memungkinkan perjalanan balok di tempat-tempat tertentu,
saat ini adalah dihasilkan hanya saat balok melewati melalui masker. Bagian balok
maka akan menimbulkan serangkaian on / off kondisi yang sesuai dengan pola
lubang topeng yang lewatSkema awalnya adalah untuk menggunakan masker yang
mewakili standar biner en- coding. Namun, ini memiliki masalah yang, jika balok
ini dekat dengan batas antara dua nilai, distorsi sedikit dalam berkas dapat
memberikan output yang baik dari dua nilai yang berdekatan namun kombinasi
dari masing-masing (pada contoh bawah, di dalam transisi dari 011011 (27) untuk
www.sutondo.co.cc halaman : 6
011100 (28), perangkat bisa pro- Duce kedua nilai tetapi juga 011.111 (31) atau
011000 (24) dan lain-lain. Untuk menghadapi dengan masalah ini Gray
mengusulkan menggunakan masker yang sesuai dengan kode yang kata kode
berdekatan berbeda dalam satu posisi bit saja. Dalam kasus, sinar sedikit
perpindahan hanya akan memberikan perubahan kecil untuk pengkodean. Gambar
1 adalah adaptasi dari angka dalam paten.
Definisi kode
Gambar 2 adalah-untuk-kata reproduksi kata dari definisi yang diberikan
oleh Gray di paten [Gra53] - itu tidak pernah dijelaskan lebih baik.
Definisi Gray adalah prosedur untuk menghasilkan, apa yang sekarang kita
panggilan, Gray kode n lebar. Selain membahas proses, dia telah menunjukkan,
dengan konstruksi bahwa:
Properti P1: Kata Berdekatan dalam urutan kode Gray berbeda dalam satu
bit posisi saja.
langsung penerapan kode
Karena, selain dari sedikit terkemuka, paruh kedua kode adalah sama
sebagai yang pertama, tetapi terbalik, mengikuti yang pertama dan terakhir kata-
kata kode urutan berbeda hanya sedikit terkemuka. Dengan kata lain:
Properti P2: Kode Gray siklik.
Kedua sifat pertama mendasari penggunaan praktis yang paling umum
ditemukan untuk kode yang untuk mencari posisi rotasi poros (lihat, untuk
Misalnya, [Fos54])
Pola mewakili kode Gray dicetak pada suatu poros, atau pada disk, dan
pola yang dirasakan atau listrik detektor optic. Perhatikan bahwa akhir paling
signifikan dari kode telah transisi sedikit daripada biner normal sehingga kode
Gray memiliki keuntungan lain jelas bahwa pola dapat dicetak ke sedikit presisi
dengan pencetakan yang sama resolusi [Wal70]. Perhatikan bahwa membaca-out's
rotasi posisi poros adalah benar-benar paralel operasi.
www.sutondo.co.cc halaman : 7
Generasi urutan kode dengan cara yang berhubungan dengan nya definisi
Mari kita katakan bahwa akan melalui urutan kode Gray normal, akan naik,
atau ascending dan arah berlawanan turun, atau turun. Menghasilkan urutan turun
sama mencerminkan, dalam arti Gray's. Urutan lebar n terdiri dari, dengan definisi:
0 sebelumnya setiap anggota n lebar - 1 urutan
1 sebelumnya setiap anggota n lebar - 1 urutan tercermin.
Untuk menghasilkan turun, hal ini tercermin untuk memberikan:
1 sebelumnya setiap anggota n lebar - 1 urutan tercermin tercermin
0 sebelumnya setiap anggota n lebar - 1 urutan tercermin.
Hubungan antara kode biner dan kode Gray
a. Membangkitkan kode Gray dari biner
Algoritma di atas, dengan dua telepon per rekursi, memiliki pohon
biner mungkin metode panggilan. Kita dapat label node pohon, dan dengan
demikian memberikan setiap kode Gray kata setara biner, dengan
menetapkan sedikit sebelum setiap panggilan rekursif:
public void menghasilkan (n int, Bit d) {/ / d: sampai 0, bawah 1
B baru Word = (n);
G baru Word = (n);
generate1 (n, d);
}
Algoritma ini diberikan dalam [Er84] kode umum dalam sedikit
lebih rumit Bentuk.generate1 publik void (int m, Bit d) { if (m == 0)
display (B, G);
else {
G [m-1] = d;
B [m-1] = 0; generate1 (m-1, 0);
G [m-1] =;! D B [m-1] = 1; generate1 (m-1, 1);
}
}
Algoritma sekarang akan menghasilkan bilangan bulat biner B
bersama dengan Asso the-ciated kode Gray. Kelompok dalam laporan
adalah setara dengan:
G [m-1] = d; B [m-1] = 0; generate1 (m-1, B [m-1]);
G [m-1] =;! D B [m-1] = 1; generate1 (m-1, B [m-1]);
yaitu (jika kita menginisialisasi B [n] untuk 0, dan mengurangi
generate1 untuk satu parameter):
www.sutondo.co.cc halaman : 8
G [m-1] =] B [m;
B [m-1] = 0; generate1 (m-1);
[M-1] =! G B [m]; B [m-1] = 1; generate1 (m-1);
yaitu, dengan menggunakan operator-atau eksklusif (^ di Jawa):
B [m-1] = 0; G [m-1] = B [m] ^ B [m-1]; generate1 (m-1);
B [m-1] = 1; G [m-1] = B [m] ^ B [m-1]; generate1 (m-1);
Sekarang, seperti G tidak digunakan kecuali dalam "menampilkan",
generasi dari elemen-elemen yang dapat
dilakukan dalam urutan apapun setelah generasi bit yang diperlukan B-bisa
sehingga dihasilkan pada "waktu ditampilkan". Memberi:
/ * ALGORITMA A2: Hasilkan N LEBAR Binary DAN GRAY
KODE * /
Kata G, B;
public void menghasilkan (int n) {/ / urutan menaik
B baru Word = (n +1); B [n] = 0;
G baru Word = (n);
generate1 (n);
}
public void generate1 (int m) {
if (m> 0) {/ / menghasilkan kode biner
B [m-1] = 0; generate1 (m-1);
B [m-1] = 1; generate1 (m-1);
}
else {/ / menghasilkan kode Gray dan menampilkan
for (int i = G.length-1; i> = 0; i -) G [i] = B [i +1]
⊕ B [i];
layar (B, G);
}
}
www.sutondo.co.cc halaman : 9
b. Konversi dari biner ke Gray
Algoritma generasi di atas memberikan kami segera properti
(ditentukan oleh Gray):
Properti P4: (G
i = B i +1 ⊕ B i ), I = n - 1 ,..., 0, dimana B n diambil sebagai 0.
Hal ini memberikan algoritma paralel atau rangkaian untuk
menghasilkan G dari B, karena ekspresi adalah independen. Sebagai
alternatif, jika sebuah komputer memiliki bitwise eksklusif- atau antara
kata-kata maka kita dapat menghitung G menggunakan shift kanan:
G = B ⊕ (B / 2).
Eksklusif-atau adalah kebalikan dari "sama", cara lain sehingga
pemikiran ini adalah:
Properti P5: G
i = (B i +1 = B i ), I = n - 1 ,..., 0 (B mana n diambil sebagai 0).
Kata kode Gray adalah catatan transisi dalam yang sesuai kata
biner. Berikut adalah contohnya:
biner kata 0011110011001110100110111101101
Gray kode kata 0010001010101001110101100011011
c. Konversi Gray ke biner
Konversi Gray ke biner tidak sesederhana arah lain. Kami telah
dari P4 properti:
∀ i (B i +1 ⊕ G i = B i +1 ⊕ B i +1 ⊕ B i ), Dimana B n diambil sebagai 0.
Jadi, kita memiliki:
Properti P6: B
i = B i +1 ⊕ G i , I = n - 1 ,..., 0, dimana B n diambil sebagai 0.
Sayangnya ini bukan dan individu persamaan independen. Mereka
menimbulkan alami untuk algoritma sekuensial bagus tapi versi paralel
melibatkan akumulasi awalan yang eksklusif-atau:
Properti P6 ': B
i = G n-1 ⊕ G n-2 ... G i .
Hal ini dapat dihasilkan oleh rangkaian awalan paralel seperti pada Gambar 4.
Atau [Wan66], jika komputer memiliki bitwise xor antara kata dan pergeseran
sejajar cepat maka kode biner dapat dihasilkan oleh serangkaian xors dan pergeseran
yang melaksanakan pekerjaan angka 4, tingkat demi tingkat:
B ⊕ G = (G / 2), B = ⊕ B (B / 4), B = B ⊕ (B / 16) ..
www.sutondo.co.cc halaman : 10