**BASIC** ialah akronim kepada ***B**eginner's **A**ll-purpose **S**ymbolic **I**nstruction **C**ode* yang merujuk kepada "Kod Arahan Bersimbol Serba Guna untuk Pelajar Baharu". Ia merujuk kepada bahasa komputer yang digunakan untuk memberi suruhan dan mengawal komputer.

Sejarah
-------

Contoh paparan BASIC
Contoh paparan skrin GW-BASIC
BASIC dicipta oleh John George Kemeny dan Thomas Eugene Kurtz di Kolej Dartmouth, Hanover, New Hampshire pada 1963 untuk membolehkan pelajar bukan bidang sains menggunakan komputer. Pada masa itu, penggunaan komputer memerlukan penulisan perisian sendiri, sesuatu yang biasanya hanya dilakukan ahli sains dan ahli matematik.

Lapan prinsip reka bentuk BASIC adalah seperti yang berikut:

1. Memudahkan penggunaan walaupun oleh pengguna baru;
2. Merupakan bahasa pengaturcaraan serba guna;
3. Membenarkan ciri lanjutan ditambah untuk kegunaan mereka yang pakar (sementara mengekalkan cirinya yang mudah bagi mereka yang baru mula belajar);
4. Bersifat interaktif;
5. Memberikan pesanan ralat yang jelas dan ramah pengguna;
6. Bergerak balas dengan pantas, terutamanya bagi atur cara kecil;
7. Tidak memerlukan kefahaman perkakasan komputer;
8. Melindungi pengguna daripada sistem pengendalian.

BASIC sebahagiannya berasaskan FORTRAN II dan sebahagian lagi berasaskan ALGOL 60, dengan penyesuaian dilakukan untuk membolehkan pengongsian masa. Pada mula-mulanya, BASIC menumpukan sokongan kerja matematik yang jelas dan sederhana, dengan sokongan aritmetik matriks (daripada pelaksanaan awalnya sebagai satu bahasa kelompok) serta kefungsian rentetan yang lengkap kemudiannya ditambah pada tahun 1965.

BASIC dilaksanakan buat pertama kali pada komputer kerangka utama GE-265 yang menyokong berbilang terminal. Berbeza dengan kepercayaan yang popular, ia pada asalnya merupakan sebuah bahasa tersusun. Para pereka bentuk BASIC memutuskan untuk menawarkan penyusun mereka secara bebas dan berusaha bersungguh-sungguh untuk mempromosikan bahasa itu. Oleh itu, kesedaran tentang bahasa tersebut menjadi agak meluas dan BASIC (dalam satu kelainan atau yang lain) tersebar luas kepada mikrokomputer pada akhir dekad 1970-an lalu kemudiannya kepada komputer rumah pada dekad 1980-an. Dalam kes-kes tersebut, BASIC cenderung dilaksanakan sebagai pentafsir dan bukannya sebagai (atau sebagai tambahan kepada) penyusun.

Walaupun BASIC telah digunakan dalam banyak minikomputer, adalah pengenalan mikrokomputer "kit" MITS Altair 8800 pada tahun 1975 yang menyebabkan kesejagatan BASIC. Kebanyakan bahasa pengaturcaraan memerlukan lebih banyak ingatan (dan/atau ruang cakera) daripada yang dibekalkan oleh komputer kecil yang mampu dibeli oleh kebanyakan pengguna. Dengan pita audio yang memberikan capaian ingatan yang perlahan serta juga kekurangan penyunting teks yang sesuai, sebuah bahasa seperti BASIC yang dapat memenuhi kekangan tersebut, dan juga dapat mentafsirkan input peranti pita secara baris demi baris, kelihatan amat menarik. BASIC kemudian menjadi salah satu ciri yang piawai kepada hampir semua komputer rumah. Antara pentafsir untuk pengguna mikrokomputer yang awal ialah Atari BASIC, Applesoft BASIC, dan GW-BASIC. GW-BASIC ialah pentafsir yang dihasilkan oleh Microsoft untuk IBM PC dan sistem yang serasi.

Menjelang separuh kedua dekad 1980-an, komputer yang lebih baharu dan yang jauh lebih berupaya membekalkan lebih banyak sumber muncul dalam pasaran. Pada waktu yang sama, komputer beralih daripada hanya merupakan minat penggemar menjadi sebuah alat yang digunakan khususnya untuk atur cara yang ditulis oleh orang lain dan justera, pengaturcaraan tidak lagi penting kepada kebanyakan pengguna. Oleh itu, BASIC mula merosot daripada segi kepentingannya, walaupun masih terdapat banyak versi bahasa tersebut. Namun nasib BASIC kemudian pulih sekali lagi apabila Visual Basic diperkenalkan oleh Microsoft.

Contoh kod sumber
-----------------

Contoh di bawah menunjukkan BASIC generasi terkemudian sudah boleh diaturcara secara berstruktur seperti Pascal, C dan sebagainya.

```
Private Sub Command1_Click()
    Dim a, b As Integer
    a = txt1.Text
    b = txt2.Text
    txt3.Text = a + b
    txt4.Text = a / b
    txt5.Text = a - b
    txt6.Text = a * b
    txt7.Text = a ^ b
End Sub

Private Sub Command2_Click()
    txt1.Text = ""
    txt2.Text = ""
    txt3.Text = ""
    txt4.Text = ""
    txt5.Text = ""
    txt6.Text = ""
    txt7.Text = ""
End Sub

Private Sub Command3_Click()
    End
End Sub
```

Lihat juga
----------

* Pentafsir (pengkomputeran)
* Sejarah bahasa pengaturcaraan BASIC
* Senarai dialek BASIC
* Senarai dialek BASIC mengikut pelantar

Buku dalam bahasa Melayu
------------------------

* Iskandar Ab Rashid & Zaitun Ismail. *Pengatucaraan Menggunakan BASIC - Langkah Demi Langkah,* Penerbitan Venton, ISBN 983-2031-82-6.
* Norhashim Abu Samah, Azizah Abdul Rahman, Yunus Hj. Tasim. *Pengaturcaraan Basic Berstruktur Edisi Kedua,* 1991/1996, 324 halaman. Penerbit Universiti Teknologi Malaysia. ISBN 983-9585-65-7
* Subariah Ibrahim, Mohd Salihin Ngadiman. *Pengaturcaraan Basic,* 1998. 164 halaman. Penerbit Universiti Teknologi Malaysia. ISBN 983-52-0114-5

Pautan luar
-----------

* BASIC di Curlie
* More Basic Computer Games by David Ahl
* Big Computer Games by David Ahl
* Malaybasic Pengaturcaraan BASIC berasaskan Bahasa Malaysia

  


| * l
* b
* s
Bahasa pengaturcaraan BASIC |
| --- |
| Klasik | Atari BASIC · Atari ST BASIC · BasiEgaXorz · Dartmouth BASIC · GW-BASIC · HP BASIC for OpenVMS · IBM BASICA · IBM Cassette BASIC · IBM Disk BASIC · Locomotive BASIC · MSX BASIC · ScriptBasic · Sinclair BASIC · TI BASIC (TI 99/4A) · Turbo-Basic XL · UBasic · Vilnius BASIC |
| Berorientasi tatacara | BBC BASIC · Beta BASIC · FreeBASIC · GFA BASIC · Liberty BASIC · Microsoft Small Basic · PureBasic · QBasic · QuickBASIC · SuperBasic · True BASIC · Turbo Basic · XBasic · Xblite · Basic4ppc · MalayBasic |
| Dengan perluasan objek | BlitzMax · FreeBASIC · Gambas · GLBasic · PowerBasic · ProvideX · RapidQ · REALbasic · Run\_BASIC · StarOffice Basic · Visual Basic · Visual Basic .NET · MalayBasic |
| Untuk peranti bimbit | NS Basic · Basic4ppc |


| * l
* b
* s
Bahasa pengaturcaraan |
| --- |
| 
* Perbandingan
* Glosari

 |
| 
* ALGOL
* APL
* Ada
* BASIC
* C
* C++
* C#
* COBOL
* Common Lisp
* Eiffel
* FORTH
* Fortran
* Haskell
* Java
* JavaScript
* Jython
* LISP
* LOGO
* Mesa
* Modula-2
* Oberon
* OCaml
* Objective-C
* Perl
* PHP
* Prolog
* PL/I
* Pascal
* PostScript
* Python
* Ruby
* Scheme
* Smalltalk
* SQL
* Tcl
* Visual Basic

 |
| 
* Kategori Kategori
* List-Class article Senarai

 |