Pregled naredbi Bascoma sa primjerima
Set znakova koji se mogu koristiti uključuje a-z, A-Z, 0-9, * + - / . , < > = ' "
Programska linija piše se [labela: [naredba] [:naredba] ['komentar]
Labela, tj oznaka naredbe ima 1-32 znaka, počinje sa slovom, a završava s :
Naziv varijable i konstante ima 1-32 znaka i počinje slovom
Tipovi podataka su 
•	Bit 
•	Byte (0-255) 
•	Word (=2B , 0-65535) 
•	Integer (=2B +/- 32767) 
•	Long (=4B, +/- 231) 
•	Single 
•	String (1-254 B).
Logički operatori su >, <, =, <>, <=, >=
Deklaracija
Dim var As type		priprema varijabli

Dim B1 As Bit         'bit može biti 0 i 1
Dim A As Byte         'brojevi 0-255
Dim C As Integer      'brojevi od -32767 do +32768
Dim L As Long
Dim S As Single	

Dim symbol As Const vrijednost		definicija varijable

Dim A As Const 5                                              
Dim B1 As Const &B1001  '&B označava binarni zapis	
Logičke i aritmetičke operacije
AND, NOT, OR, XOR		logičke operacije
+, -, *, /, MOD		aritmetičke operacije
DEC var, INC var		smanjuje/povećava za 1
SET bit, RESET bit		postavlja na 1/0 bit
ROTATE var LEFT/RIGHT	rotira bitove ulijevo ili udesno
SWAP var1, var2		zamjena vrijednosti varijablama
Pretvorbe
CHR, BCD			pretvara iz binarne vrijednosti u ASCII / BCD

Dim K As Byte
K = 65
Print K          ' ispisuje 65
Print Chr(k)     ' ispisuje A
Print Chr(66)    ' ispisuje B	

Programske strukture
SINTAKSA	OPIS	PRIMJER	
Do
      Naredbe
Loop [Until izraz]	DO petlja – izvršava se beskonačno ukoliko nema uvjeta, ili dok se ne zadovolji uvjet iz izraza npr. A=100)	Dim A As Byte
A = 1                                                         Do                                                                     
    Print A                                                       
    Incr A                                                      Loop Until A = 10                                             	
For var=start To/Downto end
      Naredbe
Next var	FOR NEXT petlja – služi za ponavljanje izvođenja naredbi određeni broj puta, pri svakom izvođenju varijabla var mijenja vrijednost između start i end 	Dim A As Byte , B1 As Byte , C As Integer

For A = 1 To 10 Step 2
   Print A
Next A

For C = 10 Downto -5
  Print C
Next

Rem ugniježdžene petlje

For A = 1 To 10
  Print A
  For B1 = 1 To 10
    Print B1
  Next                                                        
Next A	
While izraz
      Naredbe
Wend	WHILE petlja – izvršava se dok je uvjet zadovoljen	Dim A As Byte

A = 1                                                         While A < 10
   Print A
   Inc A 
Wend         	
If izraz Then 
    Naredbe1
Else
    Naredbe2
End If	Izvršava Naredbe1 ukoliko je vrijednost uvjeta istina, odnosno Naredbe2 ukoliko je vrijednost uvjeta laž	Dim A As Byte

Input "Broj " , A
If A = 1 Then                                                 
   Print "Pogodili ste"
Else
   Print "Krivo!"
End If	
CALL(parametri)	Pozivanje rutina s prijenosom parametara	Dim A As Byte , Bb As Byte
Declare Sub Test(bb As Byte)
A = 65
Call Test(a)                              
Test A                                    End

Sub Test(bb As Byte)                          
    Print Bcd(Bb)                                  
End Sub	

Ulazno izlazne naredbe
INKEY	Prihvaća ASCII vrijednost s serijskog kanala	Dim A As Byte , S As String

Do
   A = Inkey
   If A > 0 Then                                                        
      Print "ASCII kod: " ; A
   End If
Loop Until A = 27	
INPUT "komentar", var 
INPUTHEX "komentar", var	Unos preko RS232 međusklopa	Dim V As Byte
Input "Pitanje: " , V
Inc V
'ispisuje unesenu vrijednost
' uvećanu za 1
Print V  	
PRINT var [; var; var; ...]
PRINHEX var	Izlaz preko RS232 međusklopa	Dim A As Byte 
A = 1
Print "Varijabla A: " ; A	
Prekidi
ON INTx/SERIAL/Timerx	Definiranje prekidnih rutina za različite vrste prekida	
PRIORITY, DISABLE, ENABLE	Kontrola prekida	
Primjer: 

Rem deklariranje varijabli

Dim V1 As Integer
Dim Count As Integer , Ts As Byte

On Int0 Int0_int  'inicijalizacija prekida Int0

Rem Omogućavanje prekida

Enable Interrupts
Enable Int0

Priority Set Int0  'dodjeljivanje najvišeg prioriteta Int0

Rem Glavni program

Count = 0                                             'resetiranje brojača
Do
    V1 = V1 + 1
    Ts = Inkey      ' uzimanje vrijednosti sa serijskog porta
Loop Until Ts = 27  ' dok se ne pritisne ESC
End

Rem Interrupt Handler za Int0 – Kada npr. u simulatoru kliknemo na Int0 
Rem izvršit će se sljedeći dio

Int0_int:
   Incr Count
   If Count = 2 Then
      Print "Int 0 occured"
      Count = 0
   End If
 Return   ' završetak prekida i povratak u glavni program        
Brojač/timer
LOAD TimerX, vrijednost	Inicijalizacija timera	
START TimerX, STOP TimerX	Pokretanje, zaustavljanje timera	
CounterX	Broji impulse na P3.4, P3.5	

Primjeri za Timer:
Timer je 16 bitni registar koji:
1.	broji cikluse procesora (kvarc na 12 Mhz – ciklus traje 1 mikrosekundu – timer) 
2.	broji cikluse izvora (counter) 
Za mode =2 16 bitni se prebacuje na dva 8 bitna registra

1. Timer kao Counter 
Dim A As Byte , C As Integer
Config Timer0 = Counter , Gate = Internal , Mode = 1
'Timer0 = counter : timer0 radi kao counter
'Gate = Internal  : nema vanjske kontrole vrata
'Mode = 1         : 16-bitni counter

Counter0 = 0  ' resetiranje countera
Start Counter0  'omogućavanje countera
Do   
  A = Inkey 
  C = Counter0
  Print C        ' ispis vrijednosti countera
  Start Counter0  ' ponovno startanje countera jer je zaustavljen kada mu   
                  ' se pristupilo
Loop Until A = 27 ' petlja se ponavlja dok se ne pritisne ESC
End

2. Timer
Dim Count As Byte , Gt As Byte

Config Timer0 = Timer , Gate = Internal , Mode = 2
'Timer0 = timer   : timer0 kao timer 
'Gate = Internal  : nema vanjske kontrole vrata
'Mode = 2         : 8-bitni timer

On Timer0 Timer_0_int
Load Timer0 , 100        ' kad timer dođe do 100, dogodit će se prekid

Rem Omogućavanje prekida
Enable Interrupts               
Enable Timer0         

Rem Postavljanje prioriteta
Priority Set Timer0    ' najviši prioritet
Start Timer0           ' start timera

Count = 0            

Do
  Input "Broj " , Gt
  Print "Unijeli ste : " ; Gt
Loop Until Gt = 1   ' vrti petlju dok se ne unese 1
Stop Timer0         ' zaustavljanje timera
End

Rem Interrupt Handler za Timer0
Timer_0_int:
   Inc Count
   If Count = 250 Then
      Print "Timer0 Interrupt occured"
      Count = 0
   End If
Return
Ostalo
SOUND pin, trajanje, frekvencija		generiranje zvuka
WAIT sekunde, WAITMS milisek	kašnjenje u sekundama/milisekundama