Pada bab ini akan diperkenalkan mengenai token yang bisa berupa simbol (symbol),
komentar (comment), pengenal (indetifier), kata cadangan (reserved word) dan modifier.
Selanjutnya diperkenalkan mengenai konstanta yang akan dibahas pada subbab
tersendiri pada bab ini.
TOKEN
Semua tanda yang dipakai pada pemrograman Pascal adalah token kecuali di definisikan
secara khusus. Secara khusus yang merupakan token adalah simbol, komentar, modifier,
reserved word dan identifier.
Symbol
Pascal, khususnya Free Pascal, mengijinkan programmer untuk menggunakan huruf,
angka, dan beberapa simbol ASCII pada kode programnya.
Huruf
: A..Z, a..z
Angka
: 0..9
Hexadesimal : 0..9, A..F, a..f
Simbol-simbol berikut mempunyai arti khusus:
+
<
>
:= += -=
*= /=
(* *) (.
.)
//
Pada saat digunakan sebagai komentar simbol (* mempunyai kesamaan dengan dengan
arti dengan { sedangkan *) sama dengan }.
Komentar
Komentar pada kode program digunakan untuk memperjelas program. Komentar
biasanya digunakan untuk menerangkan hal-hal yang berkaitan dengan kode baik kerja
maupun fungsi, sehingga sangat berguna untuk pemeliharaan dan reuseability. Jadi, jika
sebagaian atau seluruh kode program digunakan atau diperbaiki orang lain maka bisa
terbantu dengan adanya komentar tersebut.
Hal-hal penting yang biasa dituliskan sebagai komentar pada kode program antara lain
nama file, penulis, versi, dan apa yang dilakukan program/fungsi/prosedur. Bahkan
komentar sangat sering digunakan untuk menjelaskan alur proses.
Ada tiga simbol yang digunakan untuk komentar, yaitu:
- 13 -
1.
Simbol { dan diakhri }, komentar jenis ini bisa lebih dari satu baris
Contoh:
{ ini komentar yang terdiri dari
dua baris
2.
3.
*)
Reserved Word
Reserved Word, atau kata cadangan, merupakan bagian tak terpisah dari Pascal dan tidak
dapat didefinisikan ulang. Penulisan kata cadangan tidak memperhatikan besar kecilnya
huruf karena secara umum Pascal merupakan pemrograman yang tidak memperhatikan
besar kecilnya huruf (case insensitive).
Beberapa compiler mempunyai reserved word yang berbeda, namun perbedaan tersebut
terjadi karena masalah kelengkapan atau penambahan. Sebagai contoh kata cadangan
pada Delphi Pascal lebih banyak dibandingkan Turbo Pascal, sedangkan Free Pascal
menggunakan reserved word yang dipunyai Turbo Pascal dan Delphi Pascal.
Turbo Pascal Reserved Word
Berikut ini adalah reserved word yang ada di Turbo Pascal:
absolute
else
nil
set
and
end
not
shl
array
object
file
shr
asr
for
of
string
begin
function
on
then
break
goto
operation
to
case
if
or
type
const
implementation
packed
unit
constructor
in
procedure
until
continue
inherited
program
uses
destructor
inline
record
var
div
interface
reintroduce
while
do
label
repeat
with
downto
mod
self
xor
- 14 -
finalization
library
threadvar
class
finally
on
try
except
initialization
property
exports
is
raise
False
True
exit
new
Modifier
Sebenarnya modifier bukan sepenuhnya merupakan reserved word, karena pada
kenyataannya modifier bisa dijadikan identifier namun pada tempat khusus oleh kompiler
modifier di baca dengan makna khusus.
absolute
external
override
safecall
abstract
far
pascal
softfloat
alias
far16
private
stdcall
assembler
forward
protected
virtual
cdecl
index
public
write
cppdecl
name
published
default
near
Read
export
oldfpccall
register
Identifier
Identifier, atau bisa diartikan Pengenal, menotasikan nama konstanta, variabel, tipe data,
prosedur, unit, dan program. Jadi, identifier bisa diartikan sebagai semua nama dari
sesuatu yang telah didefinisikan.
Contoh berikut ini merupakan identifier:
Program identifier_program;
Var identifier_var : integer;
Const identifier_const=10;
Pada contoh di atas reserved word dicetak tebal, sedangkan identifier untuk masing-masing
reserved word dicetak miring.
KONSTANTA
Konstanta merupakan nilai tetap yang sudah didefinisikan dan tidak berubah selam
program digunakan. Terdapat tiga jenis konstanta yaitu konstanta biasa, konstanta
bertipe data dan resource string. Konstanta biasa dan konstanta bertipe data hanya
tersedia pada Turbo Pascal dan Free Pascal. Sedangkan resource string didukung oleh
Delphi dan FreePascal dalam mode objfpc (pemrograman berorientasi object). Oleh
karena itu, pada pembahasan ini hanya dibahas mengenai konstanta biasa dan konstanta
bertipe data.
- 15 -
Tipe Data
Identifier
Value
Konstanta Biasa
Bentuk konstanta biasa mengikuti alur lurus dari bentuk umum konstanta di atas.
Kompiler harus bisa melakukan evaluasi terhadap deklarasi konstanta pada saat kode
dikompilasi. Sehingga fungsi pada library yang diperoleh pada saat run-time (program
dijalankan) tidak dapat dipakai. Konstanta biasa dapat menggunakan operator +, -, *,
/, not, div, mod, ord, chr, sizeof, int, func, trunc, round, frac, odd. Sedangkan
nilai konstanta hanya bisa menggunakan tipe data ordinal, real, char dan string.
Berikut ini contoh konstanta biasa:
Const
e = 2.81234;
a=4;
a=5;
s=Ini konstanta;
s=chr(32);
ls=sizeof(Longint);
{Konstanta
{Konstanta
{Konstanta
{Konstanta
bertipe
bertipe
bertipe
bertipe
data
data
data
data
real}
integer}
char}
string}
Assigment sebuah nilai untuk konstanta biasa tidak diperkenankan. Jadi, penambahan
untuk deklarasi sebelumnya, seperti contoh berikut, akan menyebakan kesalahan.
s:=string tambahan;
Konstanta bertipe data biasanya digunakan untuk menuliskan array dan record. Contoh
penggunaan konstanta bertipe array adalah sebagai berikut:
Const
Tt: array [1..3] of string[20] = (ikke, you, paino);
Ti: array [1..3] of longint = (1,1,6);
Sedangkan penggunaan konstanta bertipe data record adalah seperti pada contoh berikut:
Type
Point = record
X, Y : real;
end;
Const
init : Point = (X:0.0, Y:0.0);
- 16 -