Selamat datang di ForSa! Forum diskusi seputar sains, teknologi dan pendidikan Indonesia.

Welcome to Forum Sains Indonesia. Please login or sign up.

April 20, 2024, 05:18:39 AM

Login with username, password and session length

Topik Baru

Artikel Sains

Anggota
Stats
  • Total Tulisan: 139,653
  • Total Topik: 10,405
  • Online today: 188
  • Online ever: 1,582
  • (Desember 22, 2022, 06:39:12 AM)
Pengguna Online
Users: 0
Guests: 170
Total: 170

Aku Cinta ForSa

ForSa on FB ForSa on Twitter

Basis bilangan 2

Dimulai oleh Farabi, Oktober 27, 2011, 09:31:18 AM

« sebelumnya - berikutnya »

0 Anggota dan 1 Pengunjung sedang melihat topik ini.

semut-ireng

#15
Yang pasti,  anda terlewat bacanya,  hehehe.....
Tahap belajar Half-Adder,  kita akan dikenalkan dulu dengan membuat memakai 5 NAND Gate.   Lalu disuruh memahami Truth Table-nya,  dsbnya.   Setelah itu kita akan dikenalkan dengan apa yang disebut Exlusive-OR Gate / Ex-Or Gate.   Ex-Or Gate itu dibentuk dari 5 buah gate juga,  Truth Tablenya lebih agak sulit lagi.   

Gambar yang anda sampaikan diatas,  adalah Half-Adder menggunakan Ex-Or Gate.   

Tentang Ex-Or Gate,  di wiki juga ada  :

[pranala luar disembunyikan, sila masuk atau daftar.]

Farabi

Liat deh, 7408 Cuma sesimpel ini, tapi besar banget ;D
Raffaaaaael, raffaaaaael, fiiii dunya la tadzikro. Rafaael. Fi dunya latadzikro bil hikmah, wa bil qiyad

Maa lahi bi robbi. Taaqi ilaa robbi. La taaqwa, in anfusakum minallaaahi.

semut-ireng


he,  iya,  memang mengagumkan.   Tapi ijinkan saya mengoreksi sedikit posting anda yl,  tulisan yang saya bold :

Kutip dari: Farabi pada Oktober 29, 2011, 06:04:23 AM
Oalah, baru tahu ada Gate kayak gini



Kayaknya ilmu persirkuitan udah lebih canggih dari yang saya kira.

Truth table sih bisa kita definisikan sendiri suka suka kita. Yang pusing itu optimasi perkalian. Kalau misalkan perkalian itu adalah penambahan berulang ulang, ini kurang optimal, tapi kita bisa pakai shift bit ke kiri dan pertambahan.

Misal 7x9

#DEFINE data 7

Mov eax,data
shl eax,3
add eax,data

Sama pasti hasilnya dengan 7x9 dan lebih cepat

Truth Table tidak bisa dibuat suka-suka kita,  tergantung rangkaian logikanya seperti apa.   Karena berdasarkan Truth Table tersebut baru bisa dibuat Diagram Waktu / Timing Diagramnya.   Memang kelihatan agak ruwet,  tapi kalo belajarnya selangkah demi selangkah,  dan prinsip2 pokoknya sudah kepegang,  terasa gak sulit2 amat.   Contohnya Ex-Or Gate,  prinsip pokok yang perlu diketahui ialah,  bahwa output = 1  hanya bila salah satu inputnya = 1.

Kemudian suatu perkalian adalah penambahan berulang-ulang,  kurang optimal.  Tapi pakai shift bit kekiri dan pertambahan ( Lebih optimal ?  ).   Bukan begitu.  Tapi perkalian memang dilakukan dengan prinsip penambahan berulang-ulang.   Caranya memang menggunakan suatu register geser ( shift register )  dan tetap memakai full-adder.   Suatu perkalian memakai register yang bergeser ke kanan,  sedangkan suatu pembagian memakai register yang bergeser ke kiri.   Suatu pembagian tetap dilakukan dengan prinsip penambahan yang berulang-ulang,  tapi bilangan yang ditambahkan itu diubah dulu dalam bentuk bilangan biner negatif  (  komplemen biner ).

Farabi

#18
Iya saya ngerti kok, dalam assemberl saya sering pakai yang namanya xor, or dan and.

Untuk meng nol kan register
xor eax,eax  karena nilai 1 dan 1 akan menjadi 0
Untuk menambahkan angka angka di gunakan or
Misalkan menambahkan angka x10 pada register eax di byte ke 3
Or eax,x00100000
Dan untuk menghilangkan nlai yang tidak disukai menggunakan AND, misal menghapus byte ke 0
And eax, 0FFFFFF00h.


Dalam pemrograman grafis, kalau tidak mengerti hal ini pasti kerjanya tidak optimal.
Raffaaaaael, raffaaaaael, fiiii dunya la tadzikro. Rafaael. Fi dunya latadzikro bil hikmah, wa bil qiyad

Maa lahi bi robbi. Taaqi ilaa robbi. La taaqwa, in anfusakum minallaaahi.

Farabi

Saya tidak tahu rangkaian dalam MC, untuk perkalian itu seperti apa, tapi kalau menggunakan pengulangan pasti akan sangat lambat. Kalau perkalian 32-bit Saya hanya membutuhkan, RAM sekitar 1 kb dengan rangkaian untuk melakukan shift dan adder saja, saya jamin bisa sangat cepat untuk perkalian. Bentar ya, saya lagi download proteus, saya mungkin bisa memperlihatkan rangkaiannya suatu hari nanti.
Raffaaaaael, raffaaaaael, fiiii dunya la tadzikro. Rafaael. Fi dunya latadzikro bil hikmah, wa bil qiyad

Maa lahi bi robbi. Taaqi ilaa robbi. La taaqwa, in anfusakum minallaaahi.

ksatriabajuhitam

kalo memperhatikan Instruction Set (ambil contoh family MCS-51 / intel, [pranala luar disembunyikan, sila masuk atau daftar.]), operasi perkalian/pembagian (MUL AB dan DIV AB) menghabiskan Oscillator Period yang fix yakni 48 clock. jadi memang sudah bukan menggunakan penambahan/pengurangan berulang lagi, tetapi menggunakan 'rangkaian' yg fix.
contoh nya, multiplier 2-bit kali 2-bit yang dicontohkan di wiki:
[pranala luar disembunyikan, sila masuk atau daftar.]
not all the problems could be solved by the sword, but sword holder take control of problems.
ForSa versi mobile: http://www.forumsains.com/forum?wap2

semut-ireng

#21
Kutip dari: ksatriabajuhitam pada Oktober 29, 2011, 08:05:04 PM
kalo memperhatikan Instruction Set (ambil contoh family MCS-51 / intel, [pranala luar disembunyikan, sila masuk atau daftar.]), operasi perkalian/pembagian (MUL AB dan DIV AB) menghabiskan Oscillator Period yang fix yakni 48 clock. jadi memang sudah bukan menggunakan penambahan/pengurangan berulang lagi, tetapi menggunakan 'rangkaian' yg fix.
contoh nya, multiplier 2-bit kali 2-bit yang dicontohkan di wiki:
[pranala luar disembunyikan, sila masuk atau daftar.]

Prinsip operasi bilangan / perkalian tetap shifting and adding, sesuai link Wiki di atas,  dan itu berarti menggunakan penambahan / pengurangan berulang.   Namun rangkaian2 penjumlah / full-adder tidak lagi dirangkai satu persatu,  melainkan sudah berupa rangkaian yang fix ( IC : Integrated Circuit ) dan di dalam IC tersebut telah dimodifikasi dengan rangkaian2 tambahan yang berfungsi untuk menghilangkan propagasi carry,  yaitu perlambatan carry karena harus melewati beberapa buah full-adder.  Pada penjumlahan bit yang banyak,  nilai perlambatan tersebut akan berupa satuan waktu yang berarti.   Kalo gak salah,  Wallace Tree yang tersebut dalam link Wiki diatas,  berkaitan dengan upaya menghilangkan / memperkecil propagasi carry, dan itu bukan hal baru ( 1964 ).  Demikian juga Booth's multiplication algorithm ( 1951 ) yang menemukan bilangan negatif biner / menerapkan Two's Complement,  sehingga memudahkan dan mempercepat perhitungan,  yaitu suatu pembagian dilakukan dengan cara penambahan berulang-ulang dengan bilangan negatifnya.  Kalau kurang tepat tolong dikoreksi.




Farabi

#22
Kutip dari: ksatriabajuhitam pada Oktober 29, 2011, 08:05:04 PM
kalo memperhatikan Instruction Set (ambil contoh family MCS-51 / intel, [pranala luar disembunyikan, sila masuk atau daftar.]), operasi perkalian/pembagian (MUL AB dan DIV AB) menghabiskan Oscillator Period yang fix yakni 48 clock. jadi memang sudah bukan menggunakan penambahan/pengurangan berulang lagi, tetapi menggunakan 'rangkaian' yg fix.
contoh nya, multiplier 2-bit kali 2-bit yang dicontohkan di wiki:
[pranala luar disembunyikan, sila masuk atau daftar.]

Wah makasih banyak buat referensinya. Saya baru liat lagi ada rangkaian seperti itu.
Wah lebih hebat mereka, masa instruksi INC 24 tapi ADD 12, sedangkan MUL apalagi DIV 48. Itu sih SUPER OPTIMAL.


Jiah ternyata mereka juga sama seide dengan saya

1011   (this is 11 in binary)
     x 1110   (this is 14 in binary)
     ======
       0000   (this is 1011 x 0)
      1011    (this is 1011 x 1, shifted one position to the left)
     1011     (this is 1011 x 1, shifted two positions to the left)
  + 1011      (this is 1011 x 1, shifted three positions to the left)
  =========
   10011010   (this is 154 in binary)
Raffaaaaael, raffaaaaael, fiiii dunya la tadzikro. Rafaael. Fi dunya latadzikro bil hikmah, wa bil qiyad

Maa lahi bi robbi. Taaqi ilaa robbi. La taaqwa, in anfusakum minallaaahi.

semut-ireng

#23
Kutip dari: Farabi pada Oktober 29, 2011, 10:55:03 PM
Wah makasih banyak buat referensinya. Saya baru liat lagi ada rangkaian seperti itu.
Wah lebih hebat mereka, masa instruksi INC 24 tapi ADD 12, sedangkan MUL apalagi DIV 48. Itu sih SUPER OPTIMAL.


Jiah ternyata mereka juga sama seide dengan saya

1011   (this is 11 in binary)
     x 1110   (this is 14 in binary)
     ======
       0000   (this is 1011 x 0)
      1011    (this is 1011 x 1, shifted one position to the left)
     1011     (this is 1011 x 1, shifted two positions to the left)
  + 1011      (this is 1011 x 1, shifted three positions to the left)
  =========
   10011010   (this is 154 in binary)

Masa sih baru liat lagi ada rangkaian seperti itu ?  hehehe...............

Super Optimal ?  Gak lah,  optimalisasi memang cukup mengagumkan,  tapi lebih pada pemanfaatan ruang dan penyederhanaan pemakaian komponen2,  sehingga berbagai komponen seperti register2,  sekian banyak full-adder dan timer / counter,  serta program2 pengontrolnya seperti TCU ( True Complement Unit ) dll,  semuanya dapat diintegrasikan dalam suatu modul yang kecil.   Misalnya,  semula dalam operasi bilangan biner ( perkalian dan pembagian ) paling tidak diperlukan 3 buah register untuk menyimpan data bilangan yang akan dikalikan /  atau akan dibagi,  data bilangan pengalinya / atau pembaginya,  dan data hasil perkalian / pembagian.   Namun sekarang cukup menggunakan 2 register saja,  karena register data bilangan yang akan dikalikan dapat difungsikan sebagai akumulator (  sekaligus berfungsi sebagai register data hasil perkalian / pembagian ).   Optimalisasi lainnya,  mode operasi daya rendah.
Tapi prinsip operasi bilangan biner tetap :  shifting and adding  (  pergeseran dan penambahan ) yang berulang-ulang.

semut-ireng

Maaf ada yang kelewatan sedikit,  perlu diluruskan :

Kutip

Untuk meng nol kan register


Bukan.  Register bukan untuk meng nol kan,  tapi untuk menyimpan data.   Data dapat disimpan di register secara paralel / serentak  dan serial / bergeser.   Dasar dari suatu register namanya Flip-flop.   Belajar flip-flop biasanya mulai dari RS flip-flop ( Reset-Set FF ),  JK flip-flop,  dan D flip-flop.   JK flip-flop itu yang cukup bikin puyeng bila disuruh buat Truth Table dan Time Diagramnya.

semut-ireng

Wah,  sorry,  masih ada yang membingungkan kayaknya ............ :)

Kutip dari: Farabi pada Oktober 29, 2011, 10:55:03 PM

Jiah ternyata mereka juga sama seide dengan saya

1011   (this is 11 in binary)
     x 1110   (this is 14 in binary)
     ======
       0000   (this is 1011 x 0)
      1011    (this is 1011 x 1, shifted one position to the left)
     1011     (this is 1011 x 1, shifted two positions to the left)
  + 1011      (this is 1011 x 1, shifted three positions to the left)
  =========
   10011010   (this is 154 in binary)


Di atas itu contoh perhitungan di atas kertas tentang perkalian bilangan biner,  bdsk link Wiki.   Perhitungan tsb mencontoh cara perkalian bilangan desimal,  maka dikatakan bergeser ke kiri dan ditambahkan.

Untuk operasi bilangan / perkalian yang dilakukan dalam komputer,  menggunakan shift register,  bergesernya ke kanan.   Dalam hal ini yang menjadi patokan nantinya adalah LSB ( bit / digit paling kanan ).   Kebalikan dengan pembagian,  menggunakan shift register yang bergeser ke kiri,  karena yang menjadi patokan nantinya adalah MSB ( bit / digit paling kiri ). 

Farabi

Kutip dari: semut-ireng pada Oktober 30, 2011, 05:50:04 AM
Maaf ada yang kelewatan sedikit,  perlu diluruskan :

Bukan.  Register bukan untuk meng nol kan,  tapi untuk menyimpan data.   Data dapat disimpan di register secara paralel / serentak  dan serial / bergeser.   Dasar dari suatu register namanya Flip-flop.   Belajar flip-flop biasanya mulai dari RS flip-flop ( Reset-Set FF ),  JK flip-flop,  dan D flip-flop.   JK flip-flop itu yang cukup bikin puyeng bila disuruh buat Truth Table dan Time Diagramnya.

Heloooow, xor eax,eax adalah untuk mengnolkan register. ;D

Kutip
Untuk meng nol kan register
xor eax,eax  karena nilai 1 dan 1 akan menjadi 0
Raffaaaaael, raffaaaaael, fiiii dunya la tadzikro. Rafaael. Fi dunya latadzikro bil hikmah, wa bil qiyad

Maa lahi bi robbi. Taaqi ilaa robbi. La taaqwa, in anfusakum minallaaahi.

semut-ireng

Thanks,  telah mengingatkan...... ;D

Tapi ada gunanya juga,  mengingatkan pula tentang register,  bahwa data bisa disimpan secara paralel / serentak,  atau secara serial / bergeser.  Bdsk hal tsb,  sebenarnya operasi bilangan biner ( penjumlahan, perkalian,  dll )  bisa dilakukan dengan prinsip parallel adder,  dan itu lebih cepat daripada serial adder.   Namun sayangnya diperlukan gate-gate yang lebih banyak,  sehingga lebih efisien memakai serial adder.

semut-ireng

Oh ya,  dalam belajar bilangan biner dikenal istilah MSB dan LSB.   MSB  :  Most Significant Bit,  sederhananya adalah bit / digit paling kiri :

[pranala luar disembunyikan, sila masuk atau daftar.]

Sedangkan LSB  :  Least Significant Bit,  sederhananya adalah bit / digit paling kanan :

[pranala luar disembunyikan, sila masuk atau daftar.]

Kelihatannya sepele,  tapi hal itu penting,  agar gak bingung waktu mengerjakan soal2 biner yang cukup sulit,  juga untuk memahami cara kerja suatu rangkaian logika.

Sedangkan istilah Bit itu sendiri,  adalah singkatan dari Binary Digit.   Semoga membantu.

mhyworld

Kutip dari: semut-ireng pada Oktober 30, 2011, 07:19:57 PM
Thanks,  telah mengingatkan...... ;D

Tapi ada gunanya juga,  mengingatkan pula tentang register,  bahwa data bisa disimpan secara paralel / serentak,  atau secara serial / bergeser.  Bdsk hal tsb,  sebenarnya operasi bilangan biner ( penjumlahan, perkalian,  dll )  bisa dilakukan dengan prinsip parallel adder,  dan itu lebih cepat daripada serial adder.   Namun sayangnya diperlukan gate-gate yang lebih banyak,  sehingga lebih efisien memakai serial adder.

Untuk prosesor-prosesor model terbaru, para produsen berlomba-lomba meningkatkan performa (kecepatan proses) dari sistem mereka. Banyaknya gate yang diperlukan bukan lagi menjadi pertimbangan utama, mengingat perkembangan teknologi yang menyebabkan system density menjadi jauh lebih tinggi dibanding awal perkembangan komputer. Untuk menjalankan sebanyak mungkin proses dalam selang waktu tertentu, digunakan model paralel komputing, artinya banyak proses bisa dijalankan secara serentak.
Unit khusus untuk menjalankan fungsi Aritmatika dan Logika (ALU) sudah diperkenalkan sejak lama. Dengan unit tersebut, prosesor tinggal mengirimkan input-input ke ALU dan kemudian menerima hasilnya. Pada awalnya ALU berupa chip yang terpisah dari main processornya, namun akhirnya unit tersebut diintegrasikan dengan CPU agar lebih optimal. Untuk mempercepat proses perhitungan, ALU dibuat dengan model parallel.
Untuk prosesor generasi terbaru, penambahan kecepatan komputasi lebih banyak ditempuh dengan cara menambah jumlah core processornya sehingga lebih banyak proses yang bisa dikerjakan secara serentak, bukan lagi menambah kecepatan clock CPU seperti yang marak terjadi pada dekade lalu.
once we have eternity, everything else can wait