Bahasa pemrograman seperti Java, C++, dan PHP mungkin sudah biasa terdengar, namun pernakah kalian mendegar bahasa pemrograman "Brainfuck"? mungkin terdengar sedikit asing, tapi brainfuck juga salah satu bahasa pemograman yang ada di dunia saat ini.
Berikut Ulasan Tentang Bahasa Pembrograman Brainfuck
A. Sejarah Brainfuck
Pada tahun 1992, urban muller, seorang pelajar fizik Switzerland, mengambil alih arkib dalam talian kecil untuk Amiga perisian. Arkib ini semakin populer, dan segera dicerminkan di seluruh dunia. Hari ini, ia adalah Arkib terbesar di dunia, yang dikenali sebagai Aminet.
Muller merancang Brainfuck dengan tujuan untuk melaksanakannya dengan sekecil mungkin penyusun, diilhamkan oleh penyusun 1024-byte untuk bahasa pengatucaraan SALAH. Penyusun asal Muller dilaksanakan dalam bahasa mesin dan disusun menjadi binari dengan ukuran 296-byte. dia membuat naik kompilator Brainfuck pertama ke Aminet pada tahun 1993. Program ini dilengkapi dengan file "Readme", yaitu menarangkan bahsa secara ringkas, dan mencabar pembaca "Siapa yang dapat memprogram sesuatu yang berguna dengannya?". Muller juga menyertakan jurubahasa dan beberapa contoh yang cukup rumit. Versi kedua penyusun hanya menggunakan 240-byte.
Semasa Aminet berkembang, penyusun menjadi populer di kalangan masyarakat Amiga, dan pada waktunya ia laksanakan untuk platform lain.
- p``: "Bahasa ibu bapa" rasmi Brainfuck
- Abacus Tak Terbatas: Bahasa "grand-parent" Brainfuck
B. Pengertian Brainfuck
Brainfuck adalah bahasa pengaturcaraan esoterik yang diciptakan tahun 1993 oleh Urban Muller. Terkenal dengan minimalisnya yang melampau, bahsa ini hanya terdiri dari delapan perintah sederhana dan satu petunjuk arah, meskipun sepenuhnya merupakan bahasa komplit-turing, Brainfuck tidak dimaksudkan untuk penggunaan praktis, tapi lebih untuk menantang dan menghibur pembrogram.
Nama bahasa itu merujuk kepada istilah slanga cetusan otak, yang merujuk kepada perkara-perkara yang sangat rumit atau tidak biasa sehingga melebihi batas pemahaman seseorang.
C. Reka Bentuk Bahasa Brainfuck
Bahasa terdiri dari delapan arahan. Program Brainfuck adalah urutan arahan ini, sifat lain (which is not ignored). Perintah dijalankan secara berurutan, dengan beberapa pengecualian. Petunjuk arahan bermula pada perintah pertama, dan setiap perintah yang ditunjukan dilaksanakan, setelah itu biasanya bergerak maju ke perintah berikutnya. Program ini berakhir apabila petunjuk arahan bergerak melewati perintah terakhir.
Bahasa Brainfuck menggunakan model mesin sederhana yang terdiri dari program dan petunjuk arahan, serta susunan sekurang-kurangnya 30.000-byte sel dimulakan menjadi sifar: bergerak penunjuk data (dimulakan untuk menunjuk ke byte paling kiri array), dan dua aliran byte untuk input dan output (paling sering disambung ke papan kekunci dan monitor masing-masing, dan menggunakan ASCII pengekodan sifat).
D. Perintah Brainfuck
Delapan perintah bahasa masing-masing terdiri dari satu sifat.
Sebagai alternatif, ] arahan sebaliknya boleh diterjemahkan sebagai lompatan tanpa syarat ke yang sepadan [ arahan, atau sebaliknya, program akan berkelakuan sama tetapi akan berjalan lebih perlahan, karena pencarian dua kali yang tidak perlu. [dan] sepadan seperti tanda kurung biasanya masing-masing [ sepadan dengan tepat ] dan sebaliknya, yang [ yang pertama, dan tidak ada yang tiada tandingannya [ atau ] antara keduanya.
Program Brainfuck boleh diterjemahkan ke dalam C menggunakan penggantian berikut, dengan andaian ptr adalah jenis char * dan telah diinisialisasi untuk menunjukan array byte seroed.
Seperti namanya program Brainfuck cenderung sukar difahami. Ini Part of it karena setiap tugas yang agak rumit memerlukan urutan perintah yang panjang dan Part of it karena teks program tidak memberikan petunjuk langsung mengenai program negeri ini, serta ketidakcekapan Brainfuck dan kemampuan input / output yang limited, adalah beberapa sebab ia tidak digunakan untuk arrangement yang serius. walaupun demikian, Brainfuck secara teorinya mampu menghitung fungsi yang dapat dikira atau mensimulasikan model komputasi lain, jika diberi akses kejumlah memori yang tidak limited.
Brainfuck adalah contoh yang disebut alluring tarpit ia boleh digunakan untuk menulis program, tetapi tidak pratiket untuk melakukannya, karena Brainfuck memberi sedikit abstraksi sehingga program menjadi sangat panjang dan rumit.
E. Contoh Penerapan Brainfuck
- Menambah 2 nilai
KESIMPULAN
Sumber
Posting Komentar