Laman » bagaimana untuk » Apakah Perduaan, dan Kenapa Komputer Digunakan?

    Apakah Perduaan, dan Kenapa Komputer Digunakan?

    Komputer tidak memahami kata-kata atau nombor cara manusia lakukan. Perisian moden membolehkan pengguna akhir mengabaikan ini, tetapi pada tahap terendah komputer anda, semuanya diwakili oleh isyarat elektrik binari yang mendaftar dalam salah satu daripada dua keadaan: on atau off. Untuk memahami data rumit, komputer anda perlu menyandarkannya dalam binari.

    Binari adalah sistem nombor 2 asas. Asas 2 bermaksud hanya terdapat dua digit-1 dan 0-yang sesuai dengan keadaan di atas dan di luar yang dapat difahami oleh komputer anda. Anda mungkin sudah biasa dengan asas 10-sistem perpuluhan. Decimal menggunakan sepuluh digit yang berkisar antara 0 hingga 9, dan kemudian membungkus sekitar untuk membentuk nombor dua digit, dengan setiap digit bernilai sepuluh kali lebih banyak daripada yang terakhir (1, 10, 100, dan lain-lain). Binari adalah sama, dengan setiap digit bernilai dua kali ganda lebih banyak daripada yang terakhir.

    Mengira dalam Perduaan

    Dalam binari, digit pertama bernilai 1 dalam perpuluhan. Digit kedua bernilai 2, yang ketiga bernilai 4, nilai keempat bernilai 8, dan seterusnya-berganda setiap kali. Menambah semua ini memberikan nombor dalam perpuluhan. Jadi,

    1111 (dalam binari) = 8 + 4 + 2 + 1 = 15 (dalam perpuluhan)

    Perakaunan untuk 0, ini memberi kita 16 nilai yang mungkin untuk empat bit binari. Pindah ke 8 bit, dan anda mempunyai 256 nilai yang mungkin. Ini memerlukan lebih banyak ruang untuk mewakili, kerana empat digit dalam perpuluhan memberi kita 10,000 nilai yang mungkin. Ia mungkin kelihatan seperti kita akan mengalami semua masalah ini untuk mencipta kembali sistem penghitungan kita hanya untuk menjadikannya kaku, tetapi komputer memahami binari jauh lebih baik daripada yang mereka fahami perpuluhan. Pasti, binari mengambil lebih banyak ruang, tetapi kami ditahan oleh perkakasan. Dan untuk beberapa perkara, seperti pemprosesan logik, binari lebih baik daripada perpuluhan.

    Terdapat satu lagi sistem asas yang juga digunakan dalam pengaturcaraan: hexadecimal. Walaupun komputer tidak berjalan pada heksadesimal, pengaturcara menggunakannya untuk mewakili alamat binari dalam format yang boleh dibaca manusia semasa menulis kod. Ini kerana dua digit heksadesimal dapat mewakili keseluruhan byte, lapan digit dalam binari. Hexadecimal menggunakan 0-9 seperti perpuluhan, dan juga huruf A hingga F untuk mewakili enam digit tambahan.

    Jadi Kenapa Komputer Digunakan Perduaan?

    Jawapan ringkas: perkakasan dan undang-undang fizik. Setiap nombor dalam komputer anda adalah isyarat elektrik, dan pada hari-hari awal pengkomputeran, isyarat elektrik jauh lebih sukar untuk mengukur dan mengawal dengan tepat. Ia lebih masuk akal untuk hanya membezakan antara "pada" keadaan yang diwakili oleh caj negatif-dan "mati" yang diwakili oleh caj positif. Bagi mereka yang tidak pasti mengapa "mati" diwakili oleh cas positif, kerana elektron mempunyai caj negatif-lebih banyak elektron bermakna lebih semasa dengan caj negatif.

    Jadi, komputer berukuran bilik awal menggunakan binari untuk membina sistem mereka, dan walaupun mereka menggunakan perkakasan yang lebih tua, lebih besar, kami telah memelihara prinsip asas yang sama. Komputer moden menggunakan apa yang dikenali sebagai transistor untuk melakukan pengiraan dengan binari. Inilah gambarajah bagaimana transistor kesan bidang (FET) kelihatan seperti:

    Pada asasnya, ia hanya membenarkan arus mengalir dari sumber ke longkang jika ada arus di pintu. Ini membentuk suis binari. Pengilang boleh membina transistor ini sangat kecil-sepanjang jalan ke 5 nanometer, atau kira-kira saiz dua helai DNA. Ini adalah bagaimana CPU moden beroperasi, dan bahkan mereka boleh mengalami masalah membezakan antara negeri-negeri di dalam dan luar (walaupun kebanyakannya disebabkan oleh saiz molekul mereka yang tidak nyata, tertakluk kepada kekasaran mekanik kuantum).

    Tetapi Kenapa Hanya Base 2?

    Jadi anda mungkin berfikir, "mengapa hanya 0 dan 1? Tidakkah anda hanya menambah angka yang lain? "Walaupun sebahagian daripadanya turun kepada tradisi bagaimana komputer dibina, untuk menambah satu lagi angka bermakna kita harus membezakan antara tahap arus yang berbeza - bukan hanya" off "dan" on , "Tetapi juga menyatakan seperti" sedikit "dan" banyak. "

    Masalahnya ialah jika anda ingin menggunakan pelbagai tahap voltan, anda memerlukan satu cara untuk dengan mudah melakukan pengiraan dengan mereka, dan perkakasan untuk itu tidak boleh digunakan sebagai pengganti untuk pengkomputeran binari. Ia sememangnya wujud; ia dipanggil komputer ternari, dan ia telah wujud sejak tahun 1950-an, tetapi itu sudah cukup di mana pembangunan di atasnya berhenti. Logika Ternary adalah cara yang lebih berkesan daripada perduaan, tetapi pada masa itu, tiada siapa yang mempunyai penggantian yang berkesan untuk transistor binari, atau sekurang-kurangnya, tidak ada kerja yang dilakukan untuk membangunkan mereka pada skala kecil yang sama seperti binari.

    Alasannya kita tidak boleh menggunakan logik ternary datang ke cara transistor ditumpuk dalam komputer-sesuatu yang dipanggil "pintu"-dan bagaimana mereka digunakan untuk melakukan matematik. Gates mengambil dua input, melakukan operasi pada mereka, dan mengembalikan satu output.

    Ini membawa kita kepada jawapan yang panjang: matematik binari adalah cara yang lebih mudah untuk komputer daripada apa-apa lagi. Logik Boolean peta dengan mudah ke sistem perduaan, dengan True and False yang diwakili oleh on dan off. Gerbang dalam komputer anda beroperasi pada logika boolean: mereka mengambil dua input dan melakukan operasi pada mereka seperti AND, OR, XOR, dan sebagainya. Dua input mudah dikurus. Sekiranya anda membuat graf jawapan untuk setiap input yang mungkin, anda akan mempunyai apa yang dikenali sebagai jadual kebenaran:

    Jadual kebenaran binari yang beroperasi pada logik boolean akan mempunyai empat output yang mungkin bagi setiap operasi asas. Tetapi kerana pintu ternary mengambil tiga input, meja kebenaran ternary akan mempunyai 9 atau lebih. Walaupun sistem perduaan mempunyai 16 pengendali yang mungkin (2 ^ 2 ^ 2), sistem ternary akan mempunyai 19,683 (3 ^ 3 ^ 3). Penggredan menjadi isu kerana sementara ternary lebih cekap, ia juga semakin kompleks.

    Siapa tahu? Di masa hadapan, kita boleh mula melihat komputer ternari menjadi sesuatu, kerana kita menolak had binari ke tahap molekul. Buat masa ini, dunia akan terus berjalan pada binari.

    Kredit imej: spainter_vfx / Shutterstock, Wikipedia, Wikipedia, Wikipedia, Wikipedia