Apakah ada alternatif untuk bit sebagai unit data terkecil? Sesuatu yang tidak hanya 0 atau 1, tetapi sebenarnya memiliki banyak kemungkinan kondisi di antaranya? Bukankah lebih alami menyimpan float seperti itu?
Apakah ada alternatif untuk bit sebagai unit data terkecil? Sesuatu yang tidak hanya 0 atau 1, tetapi sebenarnya memiliki banyak kemungkinan kondisi di antaranya? Bukankah lebih alami menyimpan float seperti itu?
Jawaban:
Tentu saja mungkin, baik secara teoritis maupun praktis.
Secara teoritis, ada dua kelas alternatif: sistem bilangan digital dengan basis selain 2 (pada kenyataannya, sistem desimal seperti yang kita tahu adalah salah satu sistem tersebut); dan sistem angka non-digital. Secara matematis, kita berbicara tentang domain diskrit vs berkelanjutan.
Dalam praktiknya, kedua opsi telah dieksplorasi. Beberapa komputer digital awal (misalnya ENIAC) menggunakan penyandian desimal daripada penyandian biner yang sekarang ada di mana-mana; pangkalan-pangkalan lain, misalnya terner, harus layak (atau tidak layak). Bahasa pemrograman esoterik Malbolge didasarkan pada komputer terner teoretis; sementara kebanyakan menyindir, tidak ada alasan teknis mengapa itu tidak bekerja. Penyimpanan dan pemrosesan domain kontinu secara historis dilakukan pada komputer analog, di mana Anda dapat meng-encode kuantitas sebagai frekuensi dan / atau amplitudo dari sinyal berosilasi, dan Anda kemudian akan melakukan perhitungan dengan menerapkan segala macam modulasi pada sinyal-sinyal ini. Saat ini, komputasi kuantum membuat teori di balik sel penyimpanan kontinu menarik lagi.
Either way, bit sebagai unit informasi teoritis terkecil masih berdiri, karena setiap alternatif dapat menyandikan lebih banyak informasi daripada satu ya / tidak, dan belum ada yang datang dengan unit teoritis yang lebih kecil (dan saya tidak berharap hal itu terjadi dalam waktu dekat).
double
Some of the early digital computers employed decimal encodings rather than the now ubiquitous binary encoding
- Sebenarnya, penyandian desimal masih digunakan sampai sekarang; itu disebut BCD . BIOS di sebagian besar komputer menggunakannya (untuk tanggal berbasis desimal) , dan juga sebagian besar kalkulator murah, karena memerlukan lebih sedikit sirkuit (mis. Lebih murah) untuk melakukan semua hal dalam BCD daripada melakukannya dalam biner dan memiliki konverter biner ke desimal.
Anda pada dasarnya menggambarkan sinyal analog, yang digunakan dalam sensor, tetapi jarang untuk perhitungan internal. Masalahnya adalah kebisingan menurunkan kualitas, Anda perlu kalibrasi yang sangat tepat dari titik referensi yang sulit untuk dikomunikasikan, dan transmisi adalah masalah karena kehilangan kekuatan semakin jauh perjalanannya.
Jika Anda tertarik menjelajahi komputasi analog, sebagian besar kelas sarjana "pengantar elektronik" meminta Anda membuat hal-hal seperti integrator op-amp . Mereka cukup mudah untuk dibangun bahkan tanpa instruksi formal.
Anda juga dapat menyimpan beberapa status digital pada node yang sama. Misalnya, alih-alih 0-2,5 volt menjadi nol dan 2,5-5,0 volt menjadi satu, Anda dapat menambahkan status ketiga di antaranya. Ini menambah banyak kompleksitas, dan secara signifikan meningkatkan kerentanan Anda terhadap kebisingan.
Itu disebut qubit, dan digunakan di komputer kuantum. Anda akan menemukan informasi lebih lanjut tentang mereka di entri wikipedia . Penelitian sedang dilakukan untuk membuat komputer yang stabil dan layak secara ekonomi.
Salah satu alasan kami menggunakan bit adalah membantu kami menyimpan dan mengambil informasi secara akurat.
Dunia nyata adalah analog, oleh karena itu semua informasi yang komputer lewati atau simpan akhirnya analog . Misalnya, arus dari tegangan tertentu pada kawat, atau muatan magnet dengan kekuatan khusus pada disk, atau lubang dengan kedalaman tertentu pada disk laser.
Pertanyaannya adalah: seberapa akurat Anda bisa mengukur informasi analog itu ? Bayangkan bahwa arus pada kawat dapat diartikan sebagai angka desimal, sebagai berikut:
Dll. Sistem ini akan membiarkan kita melewatkan banyak data dalam beberapa arus pulsa, kan? Tetapi ada masalah: kita harus sangat yakin apa voltase itu. Jika suhu atau magnet atau sinar kosmik atau apa pun yang menyebabkan fluktuasi, kita dapat membaca angka yang salah. Dan semakin halus kita bermaksud untuk mengukur, semakin besar risiko itu. Bayangkan jika perbedaan 1-millivolt signifikan!
Sebagai gantinya, kami biasanya menggunakan interpretasi digital . Segala sesuatu di atas ambang batas itu benar, dan semua yang ada di bawah itu salah. Jadi kita dapat mengajukan pertanyaan seperti "Apakah ada arus sama sekali?" bukannya " Tepatnya berapa banyak arus yang ada di sana?"
Setiap bit individu dapat diukur dengan percaya diri, karena kita hanya harus "di stadion baseball yang tepat". Dan dengan menggunakan banyak bit, kita masih bisa mendapatkan banyak informasi.
Ada juga komputer ternary bukan yang biner. http://en.wikipedia.org/wiki/Ternary_computer
Sebuah komputer terner (juga disebut komputer trinary ) adalah sebuah komputer yang menggunakan logika terner (tiga kemungkinan nilai) bukannya lebih umum logika biner (dua nilai yang mungkin) dalam perhitungannya ...
Mungkin lebih alami bagi kita tetapi ada alasan khusus mengapa biner dipilih untuk sirkuit digital dan dengan demikian untuk bahasa pemrograman. Jika Anda memiliki dua status, Anda hanya perlu membedakan antara pengaturan dua volt, katakan 0V dan 5V. Untuk setiap peningkatan tambahan ke radix (basis) Anda harus membagi lebih lanjut rentang itu sehingga mendapatkan nilai yang tidak jelas satu sama lain. Anda dapat meningkatkan rentang voltase tetapi memiliki kebiasaan buruk dalam melting circuitry ini.
Jika Anda ingin mengubah jenis perangkat keras dari sirkuit digital opsi Anda lebih bervariasi. Desimal digunakan untuk digunakan dalam komputer mekanik karena persneling memiliki toleransi panas yang jauh lebih besar dan jauh lebih berbeda daripada muatan elektron. Komputer kuantum sebagaimana dinyatakan di tempat lain memiliki cara lain untuk menangani berbagai hal. Komputer optik mungkin juga dapat melakukan hal-hal yang belum pernah kami tangani sebelumnya dan komputer magnetik juga memungkinkan.
Saya pikir Anda saat ini dapat membangun item yang dapat menampung sejumlah negara atau bahkan bekerja dengan data analog. Meskipun membangun seluruh sistem dan menjalankan semua komponen logis untuk mendapatkan arsitektur berfitur lengkap dan dapat diprogram akan banyak pekerjaan dan risiko keuangan bagi perusahaan mana pun untuk melakukan tugas ini.
Saya pikir ENIAC adalah arsitektur terakhir yang menggunakan penghitung cincin sepuluh posisi untuk menyimpan angka. Meskipun saya bisa salah tentang ini dan saya tidak yakin, seberapa besar ini mempengaruhi bagian lain dari mesin.
Penyimpanan dapat dianggap sebagai transmisi ke masa depan, semua masalah transmisi dengan media kontinyu (analog) akan berlaku.
Menyimpan status itu bisa sepele (saklar tiga arah atau semacam kisi) dan secara fisik menyimpan status ini adalah satu masalah yang banyak dijawab oleh jawaban, jauh lebih baik daripada yang saya bisa.
Perhatian utama saya adalah bagaimana keadaan tersimpan ini dikodekan dan tampaknya ada kemungkinan tinggi bahwa tugas ini adalah tugas bodoh, karena bit cukup untuk representasi data kontinu praktis, tergantung keakuratan yang Anda butuhkan, terus menambahkan lebih banyak bit.
Benar-benar data kontinu tidak mungkin disimpan dengan cara ini, tetapi persamaan untuk menghitungnya misalnya
1/3
dapat disimpan.
Sebuah petunjuk dan firasat adalah potongan-potongan kecil informasi dari sedikit. Beberapa petunjuk biasanya diperlukan untuk menetapkan nilai tertentu dari bit. Inklings lebih buruk: tidak peduli berapa banyak Anda menjumlahkan, Anda masih tidak dapat mengetahui nilai bit yang dihasilkan dengan pasti.
Lebih serius, ada logika multi-nilai di mana unit dasar dapat memiliki satu dari n negara, di mana n> 2. Anda dapat mempertimbangkan unit-unit ini untuk membawa informasi lebih sedikit daripada sedikit dalam arti paragraf sebelumnya, tetapi dari teori informasi sudut pandang Anda harus mengatakan mereka membawa lebih banyak. Sebagai contoh, Anda akan membutuhkan dua bit untuk mewakili jumlah informasi yang sama dengan nilai tunggal dalam logika bernilai empat.
Basis numerik optimal adalah e , tetapi karena cara paling sederhana untuk merepresentasikan angka dalam elektronik digital adalah dengan dua status (tegangan tinggi = 1, tegangan rendah = 0), representasi bilangan biner dipilih.
e
tanpa menyebutkan nat ? Karena malu.
Ada kemungkinan unit data yang lebih kecil. Saya tidak tahu nama resmi untuk itu, sebut saja un.
Bit adalah kata kombo yang cerdas untuk "Digit biner", yang berarti bit memiliki dua kemungkinan status. Jadi harus ada semacam digit dengan hanya satu kemungkinan keadaan.
Mari kita lihat apa artinya itu. Ini berarti Anda hanya memiliki nol untuk bekerja.
Bagaimana Anda menghitungnya? Dalam sistem x-basis apa pun, Anda meningkatkan nilainya sampai Anda kehabisan digit dan kemudian menambahkan angka untuk membentuk angka. Jika Anda hanya memiliki satu digit, Anda akan segera kehabisan digit jadi:
Nol = 0 Satu = 00 Dua = 000 dan lain-lain
Ini jelas lebih alami: lebih banyak lebih banyak! Ini memetakan dengan sempurna untuk sejumlah hal yang berbeda. Berapa banyak kentang? 00000 Itu empat kentang. Tunggu sebentar ... itu off-by-one. Jika Anda tidak suka itu, Anda bisa mendefinisikan kembali nilai 0 ke satu. Maka itu benar-benar alami: tidak ada nol tidak ada, satu nol adalah satu, dua nol adalah dua, dan sebagainya.
Ini tidak praktis untuk mesin solid state. Digit harus ditempatkan dan dilepas secara fisik dan tidak dapat diukur dengan baik.
Saya tidak dapat menemukan referensi bahasa Inggris yang pasti, tetapi sejauh yang saya ingat dari Information Theory Class , bit adalah unit informasi mendasar. Sedikit informasi adalah informasi yang Anda terima setelah melemparkan koin yang adil (probabilitas 50% untuk setiap sisi). Segala sesuatu yang lain dapat dikurangi menjadi ini.
Bahkan jika Anda menggunakan perangkat yang memiliki banyak status, itu selalu dapat dikurangi menjadi bit.