Sabtu, 18 September 2010

KEBOSAnAn

 Tau kan artinya Monoton? Ya, monoton itu satu. Nah, apa coba maksudnya kehidupan monoton? Bukan, kehidupan yang satu, maksudnya kehidupan yang itu-itu aja. Kehidupan yang dataaaaaaaaaarrrrr banget. Nah lho? Apa blogger ini kehidupannya monoton gitu?



Curhat bentar yah. Kalau saya sih ngerasa monotoooooonnnnn banget. Bangun tidur>Ngopi>KUL> pulang kerumah>nonton>main komp>tidur.
Nah itulah kehidupan saya sehari-hari. Beneran deh, bete banget. Bangun tidur ngadepin hari yang sama. Gak ada tantangannya sama sekali. Kerjaannya cuma itu-itu aja. Apa yang beda gitu di hidup ini? Ada yang beda, tapi dikit banget. Hampir gak kerasa. Tapi, seharusnya aku gak boleh ngeluh gini yah? Hidup itu harus di syukuri. Walaupun kehidupan yang di beri Allah Swt. monoton banget.


Coba bayangin aja, tiba-tiba hidup kamu yang monoton itu, di ganti sama Allah Swt. jadi hidup yang "wah." Bayangin lagi, bakal susah kita ngadepinnya. Masalahnya kita udah biasa sama kehidupan kaya gitu. Ya.. coba berimajinasi aja deh.

Nih, aku mau kasih tips aja biar kehidupan kamu yang "monoton" itu gak terlalu monoton banget.

1. Cari kegiatan yang gak biasa.
Misalnya, mulai lari dari rumah kesekolah atau coba hal-hal baru atau lagi ikut ekskul yang buanyak banget.

2. Kembangkan bakat.
Kembangkan bakat yang ada. Terus, kalau udah di kembangin, nah coba-coba ikut lomba atau apa gitu.

3. Punya Pacar.
Biasanya, kalau punya pacar serasa ada yang beda. Ya, ini bikin nambah list di hidup kita. *gak wajib*

4. Cari musuh.
Nah, ini dia cara yang gak bener tapi ampuh kok. Kalau punya musuh itu serasa ada tantangan aja. Tapi, gak usah di terapkan kok.

5. Aktifitas yang gak biasa.
Nah, cari deh aktifitas yang gak biasa. Kayanya hiking ke gunung. Terus, sepeda muter-muter komplek. Atau sekalian aja yang nekat. *asal jangan merugikan aja*

6. Cari masalah.
Nah, kalau mau hidup kita ada tantangannya. Cari deh masalah. Kita bakal terasah buat menyelesaikan masalah itu. *tapi, gak wajib kok*

7. Cari Temen Unik
Nah, kalau temen unik itu suka rada susah. Tapi, temen unik ini bakal lumayan ngerubah hidup kita kok.

Nih, cara-cara yang rada nekat. Tapi, kalau mau di tiru. Silahkan aja.

1. Cari sensasi.
Oke, maksudnya cari sensasi itu sensasi yang bener-bener seantero jagad raya bilang "wauw" atau kaget. Sensasinya bisa postif atau negatif. Tapi, yang bakal bener-bener "wah" sih yang negatif.

2. Ikut acara realty show
Nah, ikut-ikut yang kaya gini juga lumayan bikin hidup kita gak monoton. Tapi, dalam jangka waktu pendek.

3. Jadi Artis
Kalau cara yang satu ini bener-bener bikin hidup kita berubah. Pasalnya, artis gitu lho. Artis yang bakal punya fans, jadwal padat, dan sebangsanya. Tapi, kalau mau jadi artis siap-siap mental aja.

4. Jadi Orgil.
Kalau yang ini. Jadi Orgil alias Orang Gila sih, bener-bener merubah lho. Soalnya kehidupan kita berputar 359 derajat. Hehehehe....

Nah, itu tips-tips supaya hidup gak monoton banget. Semoga membantu. ^^

Jumat, 17 September 2010

DASAR – DASAR JARINGAN DAN TELEKOMUNIKASI

Soal PT4.1 Sistem Telekomunikasi
  1. Bandingkan dan bedakan berbagai saluran komunikasi berkabel ?
  2. Apa saja saluran komunikasi nirkabel yang sedang berkembang ?
Jawaban :
  1. Media kabel merupakan komunikasi yang menggunakan sambungan kabel fisik untuk mentransmisikan data serta informasi, antara lain :
1. Kabel ganda ulir (twisted – pair wire) adalah bentuk komunikasi melalui kabel yang paling umum, kabel ini digunakan untuk hampir semua kabel telepon.
Yang memiliki keuntungan : murah, banyak tersedia, mudah diproses, dan tidak menganggu.
2. Kabel koaksial adalah kabel tembaga yang diisolasi, digunakan untuk membawa data berkecepatan tinggi dan sinyal televisi.
Yang memiliki keuntungan : bandwith lebih tinggi daripada ganda gulir, tidak mudah diganggu oleh elektromagnet, dan dapat membawa lebih banyak data.
3. kabel serat optik adalah ribuan filamen serat kaca yang tipis, dikelilingi oleh pelapis logam, yang mentransmisikan informasi melalui berkas cahaya yang dihasilkan oleh laser.
Yang memiliki keuntungan : bandwith sangat tinggi, relatif murah, sulit disadap (keamanan baik).
  1. Aplikasi nirkabel yang sedang berkembang adalah fixed wireless (disebut juga broadband wireless), ultrawideband wireless, wireless local loop, multichannel multipoint distribution services (MMDS), local point distribution services (LMDS), dan free space laser. Yang secara umum, berbagai teknologi cepat ini cepat, mudah, dan murah untuk digunakan jika dibandingkan dengan kabel ataupun serat. Tetapi, dengan pengecualian ultrawideband, teknologi – teknologi ini membutuhkan jalur lurus bebas gangguan, dan sinyalnya dapat terganggu oleh cuaca buruk, seperti hujan lebat atau salju.



Soal PT4.2 Layanan Jaringan
  1. apa yang dimaksud dengan packet switchimg dan mengapa begitu penting ?
  2. Bandingkan dan bedakan antara FDDI, ATM, SONET, dan sistem T – carrier ?
Jawaban :
  1. Packet Switching adalah tekmologi transmisi data yang memecah berbagai blok teks menjadi bundel data kecil dan tetap (packet) yang dikirim terpisah melalui jaringan.
Karena pertumbuhan internet, yang merupakan jaringan packet switching. Karena memiliki infrastruktur sirkuit switch, yang didesain untuk mengoptimalkan data yang membawa suara serta jenis data lainnya.
  1. 1. Fiber Distributed Data Interface (FDDI) merupakan standart transmisi data yang didasarkan pada kecepatan dan kapasitas tinggi serat optik.
Yang meliputi : bandwith 100 Mbps, dapat menggunakan media transmisi apa saja, dapat meningkatkan kinerja jaringan, dan 10 kali lebih mahal.
2. Asynchronous Transfer Mode (ATM) merupakan tegnologi transmisi data yang menggunakan packet switching dan memungkinkan permintaan bandwith yang tidak terbatas.
Yang meliputi : bandwith tidak terbatas, menyediakan dukungan untuk transmisi data, video, dan suara dalam satu saluran telekomunikasi, memiliki kemampuan jaringan virtual, membutuhkan serat optik yang dapat mentransmisikan 2,5 gigabit per detik, lebih mahal dari ISDN dan DSL.
3. Synchronous Optical Network (SONET) merupakan standar antarmuka untuk mengirim sinyal digital melalui saluran serta optik, memungkinkan intergrasi transmisi dari beberapa vendor.
Yang meliputi : menetapkan tingkat saluran optis (optical carrier-OC), tingkat dasarnya 51,84 Mbps, dan tingkat yang lebih adalah tingkat perkalian dari tingkat dasarnya. Contohnya, PC-3 beroperasi dengan 155,52 Mbps, atau 3 kali lipat OC-1.
4. Sistem T – carrier merupakan sistem transmisi digital yang menentukan berbagai sirkuit yang beroperasi di berbagai tingkat yang berbeda, yang kesemuanya adalah kelipatan dari dasar 64 Kbps yang digunakan untuk mengirim sebuah panggilan suara.
Yang meliputi : T1 (1,5444 Mbps) setara dengan 24 saluran, T2 (6,312 Mbps) setara dengan 96 saluran, T3 (44,736 Mbps) setara dengan 672 saluran, T4 (274,176 Mbps) setara dengan 4.032 saluran.

Soal PT4.3 Protokol Jaringan
  1. Apa yang dimaksud dengan protokol jaringan ?
  2. Jelaskan apa yang dimaksud dengan protokol TCP / IP dan Ethernet ?
  3. Apa yang dimaksud dengan model ISO / OSI ?
Jawaban :
  1. Protokol Jaringan adalah serangkaian aturan dan prosedur yang mengatur transmisi yang melintasi jaringan. Berfungsi mengatur akses saluran dan pencegahan tabrakan.
  2. Transmission Control Protocol / internet protokol (TCP / IP) adalah protokol transfer file yang dapat mengirimkan file informasi berukuran besar melalui jaringanyang kadang kurang andal dengan jaminan bahwa data tersebut akan masuk dalam bentuk tidak rusak.
Ethernet adalah Ethernet merupakan jenis perkabelan dan pemrosesan sinyal untuk data jaringan komputer
  1. Model International Standarts Organisation / open system interconnection (ISO / OSI) menentukan bagaimana peranti lunak di berbagai sistem yang berbeda berkomunikasi dengan berbagai lapisan yang berbeda.

Soal PT4.4 Pemrosesan Jaringan
  1. apa yang dimaksud dengan komputasi client / server ?
  2. Apa yang dimaksud dengan pemrosesan dari rekan ke rekan ?
Jawaban :
  1. Komputasi klien / server adalah bentuk pemrosesan terdistribusi, atau menghubungkan dua atau lebih komputer dalam sebuah susunan di mana sebuah mesin (server) melakukan berbagai fungsi komputasi untuk PC pengguna akhir (klien).
  2. Pemrosesan dari rekan ke rekan (peer-to-peer-processing) adalah jenis pemrosesan terdistribusi klien/server yang memungkinkan dua atau lebih komputer menggabungkan sumber dayanya, hingga membuat masing-masing komputer menjadi klien/server.




Soal PT4.5 Jenis-jenis jaringan Komputer
  1. apa saja alasan bisnis untuk menggunakan LAN ?
  2. Apa perbedaan antara LAN dan WAN ?
  3. Apa saja pilihan umum untuk WAN ?
Jawaban :
  1. - Karena menghubungkan dua atau lebih peralatan komunikasi dalam area geografis terbatas (biasanya gedung), hingga setiap peralatan pengguna di jaringan memiliki peluang untuk berkomunikasi dengan peralatan lainnya.
- Tata letak fisik dan konektivitas jaringan lebih mudah.
- Tempat penyimpanan berbagai peranti lunak dan berbagai file data untuk jaringan, yang menentukan siapa yang dapat mengakses serta dalam urutan yang bagaimana.
- Peranti keras yang menspesifikasi tingkat transmisi data.
- Lebih murah.
  1. LAN (local area network) adalah sekelompok komputer dan perangkat jaringan terhubung bersama, biasanya di dalam gedung yang sama. Sedangkan,
WAN (wide are network) adalah tidak terbatas pada lokasi geografis, meskipun mungkin akan terbatas dalam batas-batas negara atau negara. Sebuah WAN menghubungkan beberapa LAN, dan mungkin terbatas pada sebuah perusahaan (suatu perusahaan atau organisasi) atau dapat di akses oleh publik. Teknologi kecepatan tinggi dan relatif mahal. Internet adalah contoh dari seluruh dunia WAN publik.
  1. Ada dua pilihan, yang antara lain adalah :
1. Value – Added Network (VAN) adalah jenis WAN yang merupakan jaringan privat hanya digunakan untuk data, yang dikelola oleh pihak ketiga eksternal dan digunakan oleh beberapa perusahaan agar mendapat sisi ekonomis dalam biaya layanan jaringan serta mana jeman jaringan.
2. Virtual Private Network (VPN) adalah jenis WAN yang dioperasikan oleh penyedia layanan biasa, menyediakan gerbang antara LAN perusahaan dengan internet dan memungkinkan akses ke e – mail, file bersama, atau internet jaringan perusahaan, melalui koneksi internet.



BAB V
DASAR – DASAR INTERNET

Soal PT5.1 Apa yang disebut Internet?
  1. Uraikan evolusi Internet ?
  2. Sebutkan inisiatif masa depan untuk internet ?
Jawaban :
  1. Internet tumbuh dari proyek eksperimental pada Advanced Research Project Agency (ARPA) dari departeman pertahanan Amerika Serikat. Proyek ini di mulai tahun 1969, dengan nama ARPAnet, untuk menguji kelayakan jaringan komputer area luas dimana peneliti, pendidik, militer, dan lembaga pemerintah dapat saling berbgi data, saling bertukar pesan, dan mentransfer file. Dari empat node pada awalnya, internet berubah menjadi jutaan node saat ini. Pertumbuhan utama terjadi setelah organisasi komersial diizinkan untuk ikut dalam ARPAnet, yang kemudian namanya diubah menjadi internet pada tahun 1993. saat ini ada sekitar 500 juta pengguna internet.
Dalam beberapa kasus, internet terlalu lambat untuk aplikasi data yang intensif. Selain itu internet kadang-kadang tidak dapat diandalkan atau tidak aman. 3 inisiatif memperbaiki kemampuan internet :
1. internet 2, pada tahun 1996, konsorsium dari 34 universitas mulai membuat jaringan yang lebih cepat dengan akses terbatas, khusus untuk penelitian. Internet2 sudah mencakup lebih dari 180 universitas yang bekerja dalam kemitraan dengan industri dan pemerintahan untuk memgembangkan dan menyebarkan teknologi dan aplikasi jaringan tingkat tinggi. Internet2 tidak terpisah secara fisik dari internet.
2. Next-generation Internet (NGI), merupakakn program penelitian dan pengembangan pemerintah federal AS multilembaga yang mengembangkan aplikasi revolusioner yang memerlukan jaringan tingkat tinggi. Bertujuan menciptakan internet yang lebih cepat, selalu aktif, dimana-mana, alami, cerdas, mudah, dan dapat dipercaya. Dengan melakukan pengujian, satu dengan kecepatan 100 kali lebih cepat daripada internet saat ini, dua dengan kecepatan 1.000 kali lebih cepat.
3. Very-High-Speed Backbone network service (VBNS), merupakan jaringan berkecepatan tinggi yang didesain untuk mendukung internet2 akademik dan inisiatif NGI yang di sponsori oleh pemerintah. Pertama kali diimplementasikan sebagai backbone OC-3 (155 Mbps), namun telah ditingkatkan ke OC-12 (622 Mbps), sasarannya adalah backbone Oc-48 (2,4 Gbps).
  1. 1. Next-generation Internet (NGI)
program penelitian dan pengembangan pemerintah federal AS multilembaga yang mengembangkan aplikasi revolusioner yang memerlukan jaringan tingkat tinggi.
2. Very-High-Speed Backbone network service (VBNS)
jaringan berkecepatan tinggi yang di desain untuk mendukung internet2 akademik dan inisiatif NGI yang di sponsori oleh pemerintah.

Soal PT5.2 operasi Internet
  1. uraikan berbagai cara untuk koneksi ke internet ?
  2. Jelaskan bagian-bagian dari alamat internet ?
Jawaban :
  1. - Koneksi melalui Server LAN
komputer pengguna harus memiliki perangkat lunak khusus yang disebut communication stack, yang menyediakan sekumpulan protokol komunikasi yang melaksanakan fungsi-fungsi yang lengkap dari model komunikasi tujuh lapis OSI
- Koneksi melalui Serial line Protocol / Point-to-Point Protocol (SLIP/PPP)
pengguna harus memiliki modem dan peranti lunak khusus yang memungkinkan untuk menghubungi server SLIP/PPP melalui penyedia layanan.
- Koneksi melalui Layanan Online
memerlukan modem, peranti lunak komunikasi standart, dan rekening layanan informasi online dengan ISP.
- Koneksi melalui Televisi
bagi yang tidak memiliki komputer, televisi juga bisa menyadiakan akses internet. Dengan menggunkanan televisi, alat koneksi khusus , dan koneksi telepon. Penonton dapat berselancar di World Wide Web.
- Koneksi melalui Sarana lainnya
terminal internet khusus yang disebut “Internet Lite” atau komputer jaringan, yang membuat akses internet lebih murah dan lebih cepat.
  1. - Alamat IP, alamat yang ditetapkan, yang secara khusus mengidentifikasi sutatu komputer di internet. Yang terdiri dari atas angka-angka, dalam empat bagian, dan dipisahkan dengan titik. Contohnya IP suatu komputer adalah 192.186.0.101
- Domain Name System (DNS), sistem yang diatur oleh Internet Corporation for Assigned Names (ICANN) dan yang menetapkan nama untuk setiap situs di Internet.
- Nama Domain, nama yang ditetapkan bagi situs Internet, yang terdiri atas beberapa bagian, dipisahkan dengan titik, dan diterjemahkan dari kanan ke kiri.
- Spesifikasi Tingkat Atas (Zona), bagian yang paling kanan dari nama Internet, yang menunjukkan jenis organisasi yang memiliki situs tersebut.

Soal PT5.3 Layanan yang Disediakan Oleh Internet
  1. jelaskan layanan-layanan yang disediakan oleh Internet ?
  2. Apa yang dimaksud dengan layanan web ?
Jawaban :
  1. - Layanan Penemu, mencakup penjelahjahan dan penelusuran informasi, dan menyediakan kepada pelanggan kemampuan untuk menemukan, melihat, men-download, dan memproses informasi.
- Layanan Komunikasi, mencakup e – mail, chatting, nemsgroup, dan telepon Internet (Internet telephony, yang disebut voice over IP, atau VoIP).
- Layanan Kerja sama, Internet memungkinkan adanya kerja sama elektronik antara individu dan kelompok, serta kerja sama antara organisasi.
- Layanan Web, aplikasi modular pelanggan dan bisnis yang mandiri dalam hal isi dan depkripsi. Layanan Web dapat dipilih oleh pengguna dan digabungkan dengan alat apa pun (dari komputer pribadi hingga telepon seluler).
- Layanan World Wide Web, sistem dengan standart yang diterima secara universal untuk menyimpan, menelusuri, memformat, dan menampilkan informasi melalui arsitektur klien/server, menggunakan fungsi-fungsi transport dari Internet.
  1. Layanan Web adalah aplikasi modular pelanggan / bisnis yang mandiri dalam hal isi yang dikirim melalui Internet.


Soal PT5.4 World Wide Web
  1. apa yang disebut dengan URL ? Jelaskan berbagai bagian yang membentuk URL ?
  2. Apa peran dari browser ?
Jawaban :
  1. Uniform Resource Locator (URL) adalah serangkain huruf yang mengidentifikasi alamat dari sumber tertentu di Web. Contohnya URL http://www.microsoft.com
bagian yang membentuk URL :
1. HTTP (hypertext transport protocol), merupakan standart komunikasi yang digunakan untuk mentransfer halaman di bagian WWW di Internet.
2. WWW.alamat.COM, menunjukkan nama domain yang mengidentifikasi server Web yang menyimpan situs Web.
  1. Browser berperan memungkinkan prngguna untuk menunjukkan dan mengeklik bagian yang diinginkan di Web atau disebut berselancar (surfing).

Senin, 13 September 2010

materi pascal

PENDAHULUAN
Bahasa Pascal adalah bahasa pemrograman tingkat tinggi (high level language) yang cukup populer, khususnya di Indonesia. Hal ini disebabkan bahasa Pascal lebih mudah dipahami dibanding bahasa pemrograman lainnya, seperti bahasa C, bahasa assembler, dan lain sebagainya. Selain itu, bahasa Pascal adalah bahasa pemrograman yang terstruktur dan lebih mendekati bahasa manusia (bahasa Inggris) sehingga sangat cocok diterapkan dalam dunia pendidikan. Dalam latihan ini, digunakan compiler FreePascal (www.freepascal.org) yang bersifat open source dan tersedia di banyak operating system (DOS, Windows, Linux, Macintosh, FreeBSD, dan lain sebagainya).
Sebelum mempelajari pemrograman dengan bahasa Pascal, sebaiknya mengerti terlebih dahulu tentang konsep dan teknik pemrograman. Konsep pemrograman adalah bentuk dasar dari suatu program yaitu algoritma program. Algoritma adalah urutan proses yang dilakukan oleh sebuah program, umumnya algoritma ini berbentuk flowchart (diagram alir). Teknik pemrograman adalah cara mengubah suatu algoritma menjadi program yang sebenarnya dengan bahasa pemrograman tertentu. Konsep dan teknik pemrograman adalah dasar dari pemrograman komputer, dengan menguasai kedua hal tersebut maka mempelajari pemrograman menjadi lebih mudah.









A. Struktur Program Pascal

Struktur dari suatu program pascal terdiri dari sebuah judul program dan suatu blok program atau badan program. Blok program dibagi lagi menjadi dua bagian, yaitu : bagian deklarasi dan bagian pernyataan.
Secara ringkas, struktur suatu program pascal dapat terdiri dari :
1. Judul program
2. Blok program
a. Bagian deklarasi
- deklarasi label
- deklarasi konstanta
- deklarasi tipe
- deklarasi variable
- deklarasi prosedur
- deklarasi fungsi
b. Bagian pernyataan
Program pascal yang paling sederhana adalah program yang hanya terdiri dari sebuah bagian pernyataan saja.
Begin
End.
Bentuk umum dari bagian pernyataan adalah :
Begin
Statement;
End .
Contoh :
Begin
Writeln ( ‘Saya pascal’ );
Writeln ( ‘————–‘ )
End .
Outputnya : Saya pascal
—————
Program pascal tidak mengenal aturan penulisan di kolom tertentu, jadi boleh ditulis mulai kolom berapapun. Penulisan statement-statement pada contoh program yang menjorok masuk beberapa kolom tidak mempunyai pengaruh diproses, hanya
dimaksudkan supaya mempermudah pembacaan program, sehingga akan lebih terlihat bagian-bagiannya, dan baik untuk dokumentasi.
Judul program sifatnya optional dan tidak signifikan didalam program. Jika ditulis dapat digunakan untuk memberi nama program dan daftar dari parameter tentang komunikasi program dengan lingkungannya yang sifatnya sebagai dokumentasi saja. Judul program bila ditulis harus terletak pada awal dari program dan diakhiri dengan titik koma.
Program contoh ;
Begin
Writeln ( ‘pascal’ );
Writeln( ‘—————‘ );
End

B. Operasi / Operator & Asignment

Tanda operasi (operator) di dalam bahasa Pascal dikelompokkan ke dalam 9 kategori, yaitu :

1. Assignment operator.
2. Binary operator.
3. Unary operator.
4. Bitwise operator.
5. Relational operator.
6. Logical operator.
7. Set operator.
8. String operator.
1.Assignment operator
Assignment operator (operator pengerjaan) menggunakan simbol titik dua diikuti oleh tanda sama dengan (:=).
Contoh :
A:=B
2.Binary operator
Digunakan untuk mengoperasikan dua buah operand. Operand dapat berbentuk konstanta ataupun variabel. Operator ini digunakan untuk operasi aritmatika yang berhubungan dengan nilai tipe data integer dan real.

Operator
Operasi
Tipe operand
Tipe hasil
* Perkalian real,real
integer,integer
real,integer real
integer
real
DIV Pembagian bulat integer,integer integer
/ Pembagian real real,real
integer,integer
real,integer real
real
real
MOD Sisa pembagian integer,integer integer
+ Pertambahan real,real
integer,integer
real,integer real
integer
real
- pengurangan real,real
integer,integer
real,real real
integer
real

Contoh :
15*5 hasilnya 75
20/3 hasilnya 6.6666666667E+00
20 div 3 hasilnya 6
20 mod 3 hasilnya 2


3.Unary operator
Operator ini hanya menggunakan sebuah operand saja. Dapat berupa unary minus dan unary plus. Unary minus digunakan untuk menunjukkan nilai negatif, baik pada operang numerik real maupun integer. Unaru plus adalah operator untuk memberai tanda plus.
Contoh :
-5 +7
-2.5 +2.5
4.Bitwise operator
Digunakan untuk operasi bit per bit pada nilai integer. Terdiri dari operator NOT, AND, OR, XOR, Shl, Shr.

5.Relational operator
Relational operator digunakan untuk membandingkan hubungan antara dua buah operand dan akan didapatkan hasil tipe boolean, yaitu True atau False. Terdiri dari operator : =, <, >, <=, >=, <>


6.Logical operator
Terdapat 4 buah logical operator yaitu : NOT, AND, OR dan XOR. Operator ini bekerja dengan nilai-nilai logika, yaitu True dan False.

7.Set operator
Digunakan untuk operasi himpunan.

8.String operator
Digunakan untuk operasi string. Hanya ada sebuah operator string saja, yaitu operator + yang digunakan untuk menggabungkan dua buah nilai string.

Contoh :
Nama1 := ‘Arief ‘;
Nama2 := ‘Kurniawan’;
Nama3 := Nama1 + Nama2;














C. Tipe-Tipe Data Pascal

Dalam Pascal, tipe data yang biasa digunakan adalah sebagai berikut :
Tipe Data :

1. Tipe Sederhana
Tipe Sederhana dibedakan menjadi :
1.Tipe Ordinal, yang dibedakan menjadi :
1.Interger
2.Shortint
3.Longint
4.Boolean
5.Char
] 6.Byte
7.Word
8.Subrange
9.Enumerated
2.Tipe Real

2. Tipe String

3. Tipe Terstruktur
Tipe Terstruktur dibedakan menjadi :
1.Array
2.Record
3.Set
4.File

4. Tipe Pointer

1. Tipe Data Sederhana
Disebut juga dengan tipe data skalar, yang bisa diartikan bahwa dalam sebuah perubah
hanya dimungkinkan untuk menyimpan sebuah nilai data. Tipe data sederhana terbagi dua
yaitu, tipe ordinal dan tipe real.

1. Tipe ordinal adalah subset dari tipe sederhana. Semua tipe sederhana disebut tipe ordinal kecuali real. Karakteristik tipe data ordinal adalah :
• Semua kemungkinan nilai dari sutu tipe ordinal merupakan himpunan berurutan (ordered set), dan setiap nilai berkaitan dengan ordinalitasnya, yaitu nilai integral. Dalam semua tipe, kecuali tipe integer, nilai pertama mempunyai ordinalitas 0, yang berikutnya 1 dan seterusnya. Ordinalitas dari tipe integer adalah nilai integer itu sendiri. Dalam hal ini semua nilai, kecuali yang pertama, mempunyai nilai pendahulu atau predesesor, dan semua nilai kecuali yang terakhir mempunyai suksesor.
• Fungsi standard ord dapat diterapkan pada sembarangan tipe ordinal untuk mengetahui ordinalitasnya.
• Fungsi standard pred dapat diterapkan untuk mengetahui predesesornya. Jika fungsi ini diterapkan pada nilai pertama, akan menyebabkan kesalahan.
• Fungsi standard succ dapat diterapkan untuk mengetahui suksesornya. Jika fungsi ini diterapkan pada nilai terakhir akan menyebabkan kesalahan.
2. Konstanta bertipe real adalah bilangan yang berisi titik desimal. Dalam pascal paling sedikit harus ada satu digit sebelum dan sesudah titik desimal. Tidak boleh ada koma dan nilainya bisa positif atau negatif. Bilangan riil juga bisa dinyatakan dalam bentuk eksponensial. Dalam pemakaiannya pangkat dari bilangan dasar 10 (yang digunakan untuk menunjukkan eksponensial) dinyatakan dengan notasi E. Jika dinyatakan dalam notasi Eksponensial, maka bilangan :

0.00017543 adalah 1.7543E-4

Dalam Turbo Pascal terdapat lima macam tipe riil, yaitu : real, single, double, extended dan comp. Tipe single, double, extended dan comp hanya bisa digunakan jika komputer anda dilengkapi dengan koprosesor numeris 80x87. Tabel 1 dibawah ini menunjukkan tipe-tipe riil lengkap dengan batasan nilainya. Dari tabel 1 tersebut, tipe comp hanya bisa menyimpan nilai bulat (whole value) yang mempunyai batasan -263 + 1 sampai 263 – 1. Operator yang dapat dioperasikan pada data tipe riil tersaji dalam tabel 2. Perhatikan bahwa operator pembagian untuk data integer (div) dan untuk real (/) akan memberikan hasil berbeda. Operator / dapat digunakan baik untuk data integer atau untuk data real, yang hasilnya berupa data real.

Operator-operator pada tipe riil
Operator Kegunaan
+ Penjumlahan
- Pengurangan
* Perkalian
/ Pembagian
Bilangan-bilangan riil banyak digunakan dalam perhitungan-perhitungan matematika, sains dan rekayasa dimana derajat ketelitian kadang-kadang sangat diperhatikan. Beberapa kesalahan mungkin akan terjadi sehubungan dengan pemakaian bilangan riil karena bilangan riil biasanya dinyatakan dalam notasi saintifik yang mempunyai cacah digit yang tetap. Beberapa bilangan memerlukan cacah digit yang tak terhingga. Sebagai contoh, pecahan 1/3 yang jika dinyatakan dalam bilangan riil. Akan mempunyai bentuk 0.3333333….

2. Tipe String
Data yang bertipe string adalah data yang berisi sederetan karakter yang banyaknya karakter bisa berubah-ubah sesuai dengan kebutuhan, yaitu dari 1 sampai 255 karakter. Tipe string yang tidak dinyatakan panjang karakternya dianggap mempunyai 255 karakter.

3. Tipe Terstruktur
Dalam tipe terstruktur setiap perubah bisa menyimpan lebih dari sebuah nilai data. Masing-masing nilai data tersebut disebut dengan komponen. Tipe terstruktur karakteristiknya ditentukan berdasar cara penstrukturan dan tipe masing-masing komponen. Jika komponennya juga bertipe terstruktur, tipe terstruktur yang dihasilkan mempunyai lebih dari sebuah tingkat penstrukturan. Tingkat penstrukturan bisa tak terbatas. Ukuran tipe terstruktur dalam Turbo Pascal maksimum 65520 byte.

4. Tipe Pointer
Semua tipe data yang disebutkan di atas, apabila digunakan untuk mendeklarasikan suatu perubah, maka sifat perubah tersebut adalah perubah yang statis. Pascal dilengkapi fasilitas yang memungkinkan pemakai untuk menggunakan perubah yang sifatnya dinamis, yang disebut dengan pointer.







D. Deklarasi (Konstanta, Variabel dan Ekspresi).

1. Konstanta
Konstanta adalah suatu identifier non-standar yang nilainya telah ditetapkan dalam suatu program dan dideklarasikan pada bagian deklarasi. Bagian umum deklarasinya adalah :

CONST identifier = nilai;

Contoh :

CONST phi = 3.14;
x= 2;
y = ‘S’;


2. Variabel
Variabel adalah suatu identifier non-standar yang nilainya tidak tetap atau nilainya merupakan hasil dari suatu proses. (variabel yang dimaksudkan disini sama seperti halnya arti variabel pada aljabar). Bentuk umum deklarasinya adalah :

1. Jika hanya 1 (satu) variabel yang dideklarasikan :

VAR identifier : jenis data;

2. Jika lebih dari 1 (satu) variabel dan masing-masing memiliki jenis data yang sama :

VAR id-1, id-2, …., id-3 : jenis data;

3. Jika beberapa variabel yang berbeda jenis datanya :

VAR identifier-1 : jenis data;
identifier-2 : jenis data;
.
.
.
identifier-n : jenis data;

4. Jika variabel yang dideklarasikan berjenis data non-standar :

TYPE id = (data_item_1,data_item_2,…,data_item_n);
VAR id-v : id;

SUB-RANGE :

TYPE id = data_item_pertama .. data_item_terakhir;
VAR id-v : id;






Contoh :

1. VAR x : integer;
2. VAR p,q,r : real;
3. VAR a,b : char;
m,n : boolean;
4. TYPE warna = (merah,hitam,biru,putih,kuning);
VAR x1,x2 : warna;
5. TYPE tahun = 1900 .. 1993;
VAR thn-1,thn-2,thn-3 : tahun;

3. Ekspresi
Sebuah ekspresi merupakan kumpulan dari operand-operand (seperti : bilangan, konstanta, variabel dll) yang bersama-sama dengan operator membentuk suatu bentuk aljabar dan menyatakan suatu nilai.

Ada 2 (dua) jenis ekspresi dalam bahasa Pascal, yaitu :
1. Ekspresi numerik / aritmatika, yaitu suatu ekspresi yang menghasilkan nilai numerik / aritmatika.
2. Ekspresi Boolean atau ekspresi logika, yaitu suatu ekspresi yang menghasilkan nilai boolean / logika (true/false).

Contoh :
1. (b * b – 4 * a * c) / (2*a) / (2 * a)  ekspresi numerik, jika a,b dan c adalah bilangan (variabel bernilai numerik).
2. Upah < 1000.0  ekspresi boolean (“upah” adalah suatu variabel bernilai real). E. Kondisi (If, Case, For, While, Repeat) Seleksi kondisi adalah proses penentuan langkah berikutnya berdasarkan proses yang terjadi sebelumnya. Seleksi kondisi ini sangat penting dalam pemrograman sebab dengan adanya seleksi kondisi, program dapat menentukan proses apa yang harus dilakukan selanjutnya berdasarkan keadaan sebelumnya. Sehingga nampak seolaholah program dapat berpikir dan mengambil keputusan. Disinilah letak kekurangan komputer yaitu tidak mampu berpikir sendiri, semua hal yang dilakukan adalah berdasarkan perintah. Dalam Pascal ada tiga macam perintah seleksi kondisi, yaitu statement if…then, if…then…else dan case…of. Seleksi kondisi dengan if…then digunakan untuk mengambil satu keputusan diantara dua pilihan sedang seleksi kondisi dengan if…then…else digunakan untuk mengambil satu keputusan diantara banyak pilihan. case…of Untuk lebih memahami tentang seleksi kondisi, perhatikan contoh program di bawah ini : program Iterasi2; var Nilai : string; begin Writeln('Latihan Pascal 1: Perulangan dan Seleksi Kondisi'); Writeln('------------------------------------------------'); Writeln('Nama : ____________________'); Writeln('NIM : __________'); Writeln; Write('Masukkan nilai mata kuliah DKP Anda (huruf) : '); Readln(Nilai); if Length(Nilai) > 2 then
Writeln('Nilai tidak mungkin lebih dari dua karakter !');
else
begin
if Nilai = 'A' then
Writeln('Anda berbakat menjadi programer !')
else if Nilai = 'B+' then
Writeln('Anda bisa menjadi programer handal.')
else if Nilai = 'B' then
Writeln('Anda mampu menjadi programer.')
else if Nilai = 'C+' then
Writeln('Anda cukup mampu menjadi programer.')
else if Nilai = 'C' then
Writeln('Anda kurang tertarik pada pemrograman.')
else if Nilai = 'D+' then
Writeln('Anda tidak suka pemrograman, ya !')
else if Nilai = 'D' then
Writeln('Anda pasti benci lihat program !')
else if Nilai = 'E' then
Writeln('Anda pasti nggak niat kuliah !')
else
Writeln('Anda salah memasukkan nilai !');
end;
Readln;
end.

Sebagaimana pada program Iterasi1, jalankan program dengan F7. Kemudian ubah
baris perintah seleksi kondisi
if…then…else setelah
if…then…else yang pertama
menjadi case…of,

tentunya diikuti pula dengan beberapa perubahan yang lain sehingga program tetap dapat dijalankan.


F. Prosedur dan Fungsi

Pendahuluan
Sebuah program yang baik adalah program yang membagi permasalahan utama menjadi bagian-bagian kecil dimana setiap bagian kecil ditangani oleh sebuah subprogram, cara ini disebut dengan modular programming (pemrograman terbagi/terpecah). Cara ini termasuk pemrograman terstruktur dan sangat didukung oleh bahasa Pascal. Untuk itu, Pascal telah menyediakan dua jenis subprogram, yaitu procedure dan function (prosedur dan fungsi).

Dengan modular programming, program lebih mudah dibaca dan dimengerti Selain itu, pembenahan program dan penelusuran jalannya program (debugging) menjadi lebih mudah sebab dapat langsung diketahui subprogram mana yang berjalan tidak sesuai dengan yang diharapkan.

P r o s e d u r
Prosedur adalah subprogram yang menerima masukan tetapi tidak mempunyai keluaran secara langsung. Cara mendeklarasikan sebuah prosedur adalah sebagai berikut :

procedure A; { nama prosedur adalah A }
begin
{ statement }
end;

Pendeklarasian prosedur di atas adalah untuk prosedur yang tidak memerlukan parameter. Parameter adalah data masukan untuk subprogram yang nantinya akan diproses lebih lanjut dalam subprogram tersebut. Dalam Pascal, dikenal dua macam parameter yaitu :
1. parameter nilai (value parameter), dan
2. parameter referensi (reference parameter).

Cara mendeklarasikan parameter tersebut adalah sebagai berikut :

procedure B(X : integer; var Y : integer);
begin
{ statement }
end;

ada deklarasi prosedur di atas, parameter X adalah parameter nilai sedang parameter Y adalah parameter referensi. Jadi, pendeklarasian parameter referensi didahului oleh reserved word var. Parameter referensi ini nantinya dapat dijadikan sebagai variabel keluaran dari prosedur.

Untuk lebih memahami penggunaan prosedur dalam Pascal, perhatikan contoh program di bawah ini :

program Prosedur;
uses CRT;
var
Bil_1, Bil_2, Hasil : integer;
procedure Awal;
begin
Writeln('Latihan Pascal 2 : Prosedur dan Fungsi');
Writeln('--------------------------------------');
Writeln;
Writeln('Nama : ____________________');
Writeln('NIM : __________');
Writeln;
end;
procedure Baca_Data;
begin
Write('Masukkan bilangan pertama : ');
Readln(Bil_1);
Write('Masukkan bilangan kedua : ');
Readln(Bil_2);
Writeln;
end;
procedure Kali(A,B : integer);
var
I : integer;
begin
Hasil := 0;
for I := 1 to B do Hasil := Hasil + A;
end;
procedure Kalikan(A,B : integer; var C : integer);
var
I : integer;
begin
C := 0;
for I := 1 to B do C := C + A;
end;
begin
ClrScr;
Awal;
Baca_Data;
Kali(Bil_1, Bil_2);
Writeln(Bil_1:3,' x ',Bil_2:3,' = ',Hasil:5);
Kalikan(Bil_1, Bil_2, Hasil);
Writeln(Bil_1:3,' x ',Bil_2:3,' = ',Hasil:5);
Writeln;
Write('Tekan Enter...');
Readln;
end.

Perhatikan program di atas. Dua prosedur terakhir memiliki kemiripan, bedanya hanya pada jumlah parameter dan variabel hasil perkaliannya. Untuk lebih jelas, jalankan program dan perhatikan apa yang dilakukan oleh dua prosedur tersebut maka akan nampak perbedaan keduanya.

F u n g s i
Fungsi adalah subprogram yang menerima masukan dan mempunyai keluaran secara langsung. Cara mendeklarasikan sebuah fungsi adalah sebagai berikut :

function A : integer; { nama fungsi adalah A dengan }
begin { tipe data keluaran adalah integer }
{ statement }
A := 3; { nilai yang dikeluarkan fungsi }
end;

Sebagaimana dalam prosedur, fungsi juga dapat diberikan parameter. Cara mendeklarasikan fungsi dengan parameter juga tidak jauh berbeda dengan pendeklarasian parameter pada prosedur.

function B(X : integer) : integer;
begin
{ statement }
B := X * 2;
end;

Perbedaan utama antara prosedur dan fungsi adalah dalam menghasilkan keluaran. Walaupun prosedur bisa menghasilkan nilai keluaran, tetapi nilai tersebut tidak dapat diambil secara langsung, melainkan harus diambil melalui parameter referensi. Sedangkan keluaran dari fungsi dapat diambil langsung dari fungsi tersebut. Untuk lebih memahami perbedaan prosedur dan fungsi, perhatikan contoh berikut ini :

program Fungsi;
uses CRT;
var
Bil_1, Bil_2, Hasil : integer;
procedure Awal;
begin
Writeln('Latihan Pascal 2 : Prosedur dan Fungsi');
Writeln('--------------------------------------');
Writeln;
Writeln('Nama : ____________________');
Writeln('NIM : __________');
Writeln;
end;
procedure Baca_Data;
begin
Write('Masukkan bilangan pertama : ');
Readln(Bil_1);
Write('Masukkan bilangan kedua : ');
Readln(Bil_2);
Writeln;
end;
function Kali(A,B : integer) : integer;
var
I,J : integer;
begin
J := 0;
for I := 1 to B do J := J + A;
Kali := J;
end;
procedure Kalikan(A,B : integer; var C : integer);
var
I : integer;
begin
C := 0;
for I := 1 to B do C := C + A;
end;
begin
ClrScr;
Awal;
Baca_Data;
Writeln(Bil_1:3,' x ',Bil_2:3,' = ',Kali(Bil_1,Bil_2):5);
Kalikan(Bil_1, Bil_2, Hasil);
Writeln(Bil_1:3,' x ',Bil_2:3,' = ',Hasil:5);
Writeln;
Write('Tekan Enter...');
Readln;
end.

Perhatikan program di atas. Prosedur Kalikan dan fugsi Kali mempunyai keluaran yang sama, tetapi cara mengambil keluarannya berbeda. Perhatikan dan jelaskan apa yang terjadi jika baris keempat dalam program utama yang semula perintah :

Writeln(Bil_1:3,' x ',Bil_2:3,' = ',Kali(Bil_1,Bil_2):5);
diubah menjadi :

Writeln(Bil_1:3,' x ',Bil_2:3,' = ',Kalikan(Bil_1,Bil_2,Hasil):5);

Dalam Pascal, ada satu kelebihan dalam cara pemanggilan subprogram. Pascal mengijinkan pemanggilan suatu subprogram dari dalam subprogram itu sendiri. Tidak semua bahasa pemrograman mengijinkan cara pemanggilan subprogram seperti itu karena akan banyak memakan memori. Untuk lebih jelasnya perhatikan potongan program di bawah ini :

procedure Z;
begin
{ statement }
Z;
end;

Pada baris terakhir prosedur Z di atas, terdapat pemanggilan kembali terhadap prosedur Z, sehingga prosedur di atas tidak akan pernah selesai dijalankan sebab begitu sampai pada baris terakhir dari prosedur, program akan kembali lagi ke awal prosedur. Yang terjadi adalah semacam perulangan tanpa perintah perulangan Pascal, dan perulangan dengan cara ini disebut dengan rekursi. Rekursi berlaku terhadap semua subprogram dalam Pascal, yaitu prosedur dan fungsi.

Dengan adanya rekursi ini, banyak algoritma komputer menjadi lebih mudah dibuat programnya. Berikut ini adalah program menghitung suku banyak Legendre, salah satu contoh perhitungan yang dapat diselesaikan dengan menggunakan rekursi :

program Rekursi;
uses CRT;
var
Jum_Suku, I : integer;
Bil_X : real;
function Legendre(X : real; N : integer) : real;
var
Suku_1, Suku_2 : real;
begin
if N = 0 then
Legendre := 1
else if N = 1 then
Legendre := X
else
begin
Suku_1 := ((2*N - 1) * (X * Legendre(X, N-1))) / N;
Suku_2 := ((N-1) * Legendre(X, N-2)) / N;
Legendre := Suku_1 + Suku_2;
end;
end;
procedure Awal;
begin
Writeln('Latihan Pascal 2 : Prosedur dan Fungsi');
Writeln('--------------------------------------');
Writeln;
Writeln('Nama : ____________________');
Writeln('NIM : __________');
Writeln;
end;
procedure Baca_Data;
begin
Writeln('Menghitung Suku Banyak Legendre');
Writeln;
Write('Sampai suku ke : ');
Readln(Jum_Suku);
Write('Masukkan nilai X : ');
Readln(Bil_X);
Writeln;
end;
begin
ClrScr;
Awal;
Baca_Data;
for I := 0 to Jum_Suku do
begin
Writeln('Suku ke-',I:2,', Nilainya = ',Legendre(Bil_X, I):8:3);
end;
Writeln;
Write('Tekan Enter...');
Readln;
end.

Untuk lebih jelas memahami program, jalankan program dengan F7. Perhatikan pula apa yang dilakukan oleh fungsi Legendre.Amati perubahan variabel-variabel yang terlibat dalam fungsi.

G. Array

Array adalah tipe data terstruktur yang terdiri dari sejumlah komponen-komponen yang mempunyai tipe sama. Komponen-komponen tersebut disebut sebagai komponen type, larik mempunyai jumlah komponen yang jumlahnya tetap. Banyaknya komponen dalam larik ditunjukkan oleh suatu index, dimana tiap komponen di array dapat diakses dengan menunjukkan nilai indexnya atau subskript. Array dapat bertipe data sederhana seperti byte, word, integer, real, bolean, char, string dan tipe data scalar atau subrange. Tipe larik mengartikan isi dari larik atau komponen- komponenya mempunyai nilai dengan tipe data tersebut.
Contoh:
Var
Untai : array[1..50] of Integer;

Pada contoh Array dengan nama untai telah dideklarasikan dengan tipe integer, dengan jumlah elemen maksimum 50 elemen, nilai dari elemen array tersebut diatas harus bertipe integer.
Contoh Program :

Program Contoh_Array_Input;
Uses Crt;
Var
Bilangan : array[1..50] of Integer;
Begin
ClrScr;
Bilangan[1]:=3;
Bilangan[2]:=29;
Bilangan[3]:=30;
Bilangan[4]:=31;
Bilangan[5]:=23;
Writeln('nilai varibel bilangan ke 3 =',Bilangan[3]);
Readln;
End.

Array juga dapat dideklarasikan bersama dengan tipe yang beragam seperti contoh dibawah ini :
Program Contoh_Deklarasi_Array_Beragam;
Uses Crt;
Var
NPM : array[1..20] of string[10];
Nama : array[1..20] of string[25];
Nilai : array[1..20] of real;
Umur : array[1..20] of byte;
banyak,i : integer;
Begin
ClrScr;
Write('Isi berapa data array yang diperlukan :');Readln(banyak);
For i := 1 to banyak Do
Begin
Write('NPM =');Readln(NPM[i]);
Write('Nama =');readln(Nama[i]);
Write('Nilai=');readln(Nilai[i]);
Write('Umur =');readln(Umur[i]);
End;
{cetak varibel array}
Writeln('NPM NAMA NILAI UMUR ');
For i:= 1 to banyak Do
Begin
Writeln(Npm[i]:10,Nama[i]:25,Nilai[i]:3:2,' ',Umur[i]:3);
End;
Readln;
End.

Untuk deklarasi array dapat digunakan beberapa cara seperti berikut ini :
Type
Angka = String[20];
Var
Nama : Array [1..50] of Angka;
Begin
.
.
End.

Deklarasi tipe indeks subrange integer Indeks pada array dapat tipe skalar atau subrange, tetapi tidak bisa real. Contoh:
Var
Nilai : Array[1..10] of Integer;
pada contoh ini array nilai mempunyai 10 buah elemen yaitu dari 1 sampai 10. Array tersebut dapat dideklarasikan dengan type seperti berikut ini :

Type
Skala = 1..10;
Var
Nilai : Array [skala] of Integer;
atau :
Type
Skala = 1..10;
Y = Array[skala] of Integer;
Var
Nilai : Y;
atau :
Type
Y = Array[1..10] of Integer;
Var
Nilai : Y;
atau :
Const
Atas =1;
Bawah = 5;
type
Y = Array[Atas..Bawah] of Integer;
Var
Nilai : Y;

Deklarasi Type Indeks Skalar , Indeks dari larik dapat berupa tipe skalar.
Contoh. :
Program Deklarasi_Indeks_Array_Skalar;
Uses Crt;
Var
Jum : Array[(jan,feb,mar,apr,mei)] of Integer;
Begin
Jum[jan]:=25;
Jum[feb]:=45;
Jum[mar]:=21;
Jum[apr]:=23;
Jum[mei]:=50;
Writeln('Jumlah nilai bulan maret =',Jum[mar]);
Readln;
End.
dapat juga ditulis :
type
Bln = (jan,feb,mar,apr,mei);
Var
Jum : Array[bln] of Integer;
atau :
type
Bln =(jan,feb,mar,apr,mei);
Var
Jum : Array[jan..mei] of Integer;

Deklarasi Konstanta Array
Array tidak hanya dapat berupa suatu varibel yang dideklarasikan di bagian deklarasi variabel, tetapi dapat juga berupa konstanta (const).
Contoh Program :
Program Contoh_Deklarasi_Array_Konstan;
Uses Crt;
Const
Tetap : Array[1..4] of Integer=(7,10,21,20);
Var
i : Integer;
Begin
For i:= 1 to 4 Do
Writeln('Nilai Konstan array ke ',i:2,' =',Tetap[i]);
Readln;
End.
konstanta array dapat juga berupa ketetapan dalam bentuk karakter seperti berikut. Contoh Program :
Program Contoh_Konstan_Array_Char_;
Uses Crt;
Const
Huruf : Array[0..5] of Char=('A','B','C','D','E','F');
Var
i : Integer;
Begin
For i:= 0 to 5 Do
Writeln('Nilai konstan array ke',i:2,' = ',Huruf[i]);
Readln;
End.
Konstanta array dapat juga berupa string seperti berikut ini.
Contoh Program :
Program Constanta_Array_String;
Uses Crt;
Type
A = Array [1..5] of String;
Const
Nama : A = ('basic','pascal','cobol','paradox','dbase');
Var
i : Integer;
Begin
For i:= 1 to 5 Do
Writeln('Nilai Array ke-',i:2,'= ',Nama[i]);
readln;
end.
Dalam pascal string merupakan array dari elemen- elemen karakter seperti berikut :
Contoh Program :
Program String_Adalah_Array_Tipe_Char;
Uses Crt;
Var
Nama : string;
i : Integer;
Begin
Nama:='Turbo Pascal';
For i:= 1 to Length(nama) Do
Writeln('Elemen ',i,' dari ',Nama,'= ',Nama[i]);
Readln;
End.
contoh program bilangan prima dengan menggunakan bantuan array.
Contoh program :
Program Mencari_Bilangan_Prima_Dengan_Array;
Uses Crt;
Var
Prima : Array[1..100] of Integer;
i,j : Integer;
bil : Integer;
Begin
ClrScr;
For i := 2 to 100 Do
Begin
Prima[i]:=i;
For j:= 2 to i-1 Do
Begin
bil := (i mod j); {* i dibagi j dicek apakah 0*}
If bil = 0 then Prima[i]:=0; {*jika habis dibagi,berarti bkn prima*}
End;
If Prima[i]<> 0 Then Write(Prima[i],' '); {*cetak array yg prima*}
End;
Readln;
End.
Contoh pengurutan data dengan metode buble sort, yaitu dengan cara penukaran, dapat dilihat pada contoh dibawah ini :

Program Penggunaan_Array_Untuk_Sortir_Buble_Sort;
Uses Crt;
Var
nil1 : Array[1..100] of Integer;
n,i,j,dum : Integer;
Begin
ClrScr;
Write('mau isi berapa data acak (integer) ='); readln(n);
For i := 1 to n Do
Begin
Write('Data Ke ',i,':');Readln(nil1[i]);
End;
{* penyapuan proses}
for i:= 1 to n-1 do
begin
for j:= i to n do
begin
if nil1[j]
begin
dum:=nil1[j];
nil1[j]:=nil1[i];
nil1[i]:=dum;
end;
end;
end;
writeln;
writeln('Hasil Sortir');
for i := 1 to n do
write(nil1[i]:3);
readln;
end.

Array Dua Dimensi
Di dalam pascal Array dapat berdimensi lebih dari satu yang disebut dengan array dimensi banyak (Multidimensional array), disini akan dibahas array 2 dimensi saja. Array 2 dimensi dapat mewakili suatu bentuk tabel atau matrik, yaitu indeks pertama menunjukkan baris dan indeks ke dua menunjukkan kolom dari tabel atau matrik.
1 2
1 2 3
Untuk mengetahui cara mendeklarasikan dari penggunaan array dua dimensi dapat dilihat pada listing program dibawah ini .

Contoh Program:
Program Deklarasi_Array_Dua_Dimensi;
Uses Crt;
Var Tabel : Array[1..3,1..2] of Integer;
i,j : Integer;
Begin
ClrScr;
Tabel[1,1]:=1;
Tabel[1,2]:=2;
Tabel[2,1]:=3;
Tabel[2,2]:=4;
Tabel[3,1]:=5;
Tabel[3,2]:=6;
For I := 1 to 3 Do Begin For J:= 1 to 2 Do Begin Writeln('Elemen ',i,',',j,'= ',tabel[i,j]);
End;
End;
Readln;
End.

Alternatif Deklarasi Array Dua Dimensi.
Ada beberapa cara dalam mendeklarasikan array dua dimensi, beberapa cara tersebut dapat dilihat dibawah ini :
Contoh :
Var
Tabel : Array[1..3] of Array[1..2] of Byte;
atau :
Type
Matrik = Array[1..3,1..2] of Byte;
Var
Tabel : Matrik;
atau :
Type
Baris = 1..3;
Kolom = 1..2;
Matrik = Array[Baris,Kolom] of Byte;
Var
Tabel : Matrik;
atau :
Type
Baris = 1..3;
Kolom=1..2;
Matrik= Array[Baris] of Array[Kolom] of Byte;
Var
Tabel : Matrik;
Dibawah ini akan diberikan listing program penggunaan array dua dimensi dalam aplikasi penjumlahan matrik :
Contoh Prorgam:
Program Penjumlahan_Matrik;
Uses Crt;
Var
Matrik1,Matrik2, Hasil : Array[1..3,1..2] of Integer;
i,j : Integer;
Begin
ClrScr;
{ input matrik ke satu }
Writeln(' Elemen matrik satu');
For i := 1 to 3 Do
Begin
For j := 1 to 2 Do
Begin
Write('Elemen baris -',i,' Kolom -',j,'= ');
Readln(matrik1[i,j]);
End;
End;
{input matrik ke dua}
Writeln('input elemen matrik dua');
For i:= 1 to 3 Do
Begin
For j:= 1 to 2 Do
Begin
Write('Elemen baris -',i,' kolom -',j,'= ');
Readln(matrik2[i,j]);
End;
End;
{proses penjumlahan tiap elemen}
For i := 1 to 3 Do
Begin
For j:= 1 to 2 Do
Begin
Hasil[i,j]:=Matrik1[i,j]+Matrik2[i,j];
End;
End;
{proses cetak hasil}
For i:= 1 to 3 Do
Begin
For j:= 1 to 2 Do
Begin
Write(Hasil[i,j]:6);
End;
Writeln;
End;
Readln;
End.

Array Sebagai Parameter
Array dapat digunakan sebagai parameter yang dikirimkan baik secara nilai (by value) atau secara acuan (by reference) ke procedure atau ke function. Procedure yang menggunakan parameter berupa array harus dideklarasikan di dalam judul procedure yang menyebutkan parameternya bertipe array.
Contoh Program :
Program Contoh_Pengiriman_Parameter_Array_Di_Procedure;
Uses Crt;
Const
Garis ='---------------------------------------------------';
Type
Untai = Array[1..10] of String[15];
Bulat = Array[1..10] of Integer;
Huruf = Array[1..10] of Char;
Var
i,Banyak : Integer;
Procedure Proses(Nama:Untai;Nilai:Bulat);
Var
Ket : String;
Abjad : Char;
Begin
Writeln(Garis);
Writeln('Nama Nilai Abjad Keterangan');
Writeln(Garis);
For i := 1 to Banyak Do
Begin
If Nilai[i] > 90 Then
Begin
Abjad:='A';
Ket :='Istimewa';
End;
If (Nilai[i]<90) And (Nilai[i]>70) Then
Begin
Abjad:='B';
Ket :='Memuaskan';
End;
If (Nilai[i]<70) And (Nilai[i]>60) Then
Begin
Abjad:='C';
Ket :='Cukup';
End;
If (Nilai[i]<60) And (Nilai[i]>45) Then
Begin
Abjad:='D';
Ket :='Kurang';
End;
If Nilai[i]< 45 Then
Begin
Abjad:='E';
Ket :='Sangat kurang';
End;
Writeln(Nama[i]:15,' ',Nilai[i]:4,' ',Abjad,' ',Ket:15);
End;
Writeln(Garis);
End;
Procedure Masuk_Data;
Var
Nama : Untai;
Nilai : Bulat;
Begin
Write('Banyak data =');Readln(Banyak);
For i:= 1 to Banyak Do
Begin
ClrScr;
Writeln('Data ke - ',i);
Write('Nama =');readln(Nama[i]);
Write('Nilai =');readln(Nilai[i]);
End;
Proses(Nama,Nilai);
End;
{modul Utama}
Begin
Masuk_Data;
Readln;
End.
Referensi :




H. File Akses
Di dalam bahasa Pascal dikenal 3 macam tipe dari file, yaitu file teks, file bertipe dan file tak bertipe.
1. File Teks
File teks(text file) merupakan file yang berisi kumpulan dari karakter yang dibentuk dalam baris-baris dan masing-masing baris diakhiri dengan tanda akhir-dari-baris (end-of-line marker) berupa karakter carriage return dan karakter line feed (CR/LF). Sedangkan akhir dari file ditunjukkan oleh tanda akhir-dari-file (end of file marker) berupa karakter Ctrl-Z.
File teks sebenarnya merupakan file dengan tipe char, tetapi mempunyai perbedaan, yaitu nilai yang bukan tipe char dapat direkam dan dibaca oleh file teks. Nilai yang bukan tipe char ini akan secara otomatis dirubah ke atau dari tipe char.
File variable pada file teks ditunjukkan dengan sesuatu variabel yang dideklarasikan dengan tipe text.
Contoh :
Var
TipeFile : Text;
Begin
Assign(TipeFile,’Data.dat’);
Prosedur dan fungsi yang digunakan pada File teks. Prosedur Append Digunakan untuk membuka file yang telah ada untuk keperluan menambah data ke dalam file.
Sintak :
Append(var f:text);

Prosedur write dan writeln
Digunakan untuk merekamkan data ke file.
Sintak :
Write ([var f:text] v1[,v2,…,vn]);
Writeln ([var f:text] v1[,v2,…,vn]);
Prosedur read dan readln
Digunakan untuk membaca satu atau lebih nilai dari file ke dalam satu atau lebih variabel. Pada Readln sama dengan read tetapi kemudian akan menggeser pembacaan ke awal dari baris berikutnya dalam file.
Sintak :
Read ([var f:text] v1[,v2,…,vn]);
Readln ([var f:text] v1[,v2,…,vn]);
Prosedur SettextBuf
Digunakan untuk membuat buffer yang baru sebagai pengganti dari internal buffer untuk file variable.
Sintak :
SetTextBuff(var f:text; var buf[;size:word]);
Fungsi Eoln
Digunakan untuk mengetahui apakah posisi dari file berada di end-of-line marker atau tidak.
Sintak :
Eoln [(var f:text)]:boolean;

Fungsi SeekEof
Akan menghasilkan status akhir dari file.
Sintak :
SeekEof[(var f:text)]:boolean;
Fungsi SeekEoln
Fungsinya sama dengan fungsi standar Eoln, yaitu akan menghasilkan status akhir dari baris.
Sintak :
SeekEoln[(var f:text)]:boolean;
2. File Bertipe
File bertipe dapat diakses secara urut dan secara acak. File bertipe dapat dibuka dengan prosedur rewrite atau reset. Prosedur rewrite untuk membuat dan sekaligus membuka file baru dan prosedur reset untuk membuka file yang telah ada.
Contoh :
Var
FileData : file of byte;
Begin
Assign(FileData,’Abc’);
Rewrite(fileData);
Prosedur dan fungsi yang digunakan pada File teks. Prosedur standar write dan read
Prosedur standar write digunakan untuk merekamkan satu atau lebih nilai ke dalam file dan prosedur standar read digunakan untuk membaca satu atau lebih nilai dari file.
Sintak :
Write(f,v1[,v2,…,vn]);
Read(f,v1[,v2,…,vn]);
Prosedur standar seek
Digunakan untuk mengarahkan penunjuk file ke suatu komponen tertentu di dalam file.
Sintak :
Seek(f;n:longint);
Prosedur standar Truncate
Digunakan untuk menghapus sejumlah komponen atau record mulai dari posisi tertentu dengan Sintak :
Truncate(f);
Fungsi standar Filepos
Digunakan untuk menghasilkan letak posisi sekarang dari penunjuk file
Sintak :
FilePos(f) : longint;
Fungsi standar Filesize
Digunakan untuk menghasilkan jumlah dari komponen atau record yang sudah ada di file.
Sintak :
Filesize(f) : longint;
3. File tak bertipe.
File tak bertipe (untyped file) adalah channel I/O (Input/output) level rendah yang terutama digunakan untuk mengakses langsung suatu file di disk tidak perduli bagaimana tipe dan strukturnya. Contoh : FileData : File;
Prosedur standar read dan write diganti dengan prosedur standar BlockRead dan Blokwrite.
Procedure BlockRead
Digunakan untuk membaca sejumlah record yang ditunjukkan oleh count dari file yang ditunjukkan oleh variabel file f ke dalam memori mulai dari byte pertama yang ditempati oleh variabel buf. Jumlah record yang telah selesai dibaca akan dicatat di variabel result.
Sintak :
BlokRead(var f:file;var buf;count:word[;result:word]);
Procedure BlockWrite
Akan merekamkan sejumlah record yang ditunjukkan oleh count ke file yang ditunjukkan oleh variabel f dari memori mulai dari byte pertama yang ditempati oleh variabel buf.Jumlah dari record yang telah selesai direkamkan akan dicatat di variabel result.
Sintak :
BlokWrite(var f:file; var buf; count:word[;result:word]);
Procedure dan fungsi standar untuk semua tipe file.
Prosedur Assign,Rewrite,Reset,Close,Erase,Rename,GetDir,ChDir,MkDir dan RmDir,
sedangkan fungsi standar yang digunakan untuk ke 3 tipe file adalah fungsi standar Eof dan IOResult.

ARSITEKTUR DAN ORGANISASI KOMPUTER


FUNGSI CPU
CPU berfungsi seperti kalkulator, hanya saja CPU jauh lebih kuat daya pemrosesannya. Fungsi utama dari CPU adalah melakukan operasi aritmatika dan logika terhadap data yang diambil dari memori atau dari informasi yang dimasukkan melalui beberapa perangkat keras, seperti papan ketik, pemindai, tuas kontrol, maupun tetikus. CPU dikontrol menggunakan sekumpulan instruksi perangkat lunak komputer. Perangkat lunak tersebut dapat dijalankan oleh CPU dengan membacanya dari media penyimpan, seperti cakram keras, disket, cakram padat, maupun pita perekam. Instruksi-instruksi tersebut kemudian disimpan terlebih dahulu pada memori fisik (RAM), yang mana setiap instruksi akan diberi alamat unik yang disebut alamat memori. Selanjutnya, CPU dapat mengakses data-data pada RAM dengan menentukan alamat data yang dikehendaki.
Saat sebuah program dieksekusi, data mengalir dari RAM ke sebuah unit yang disebut dengan bus, yang menghubungkan antara CPU dengan RAM. Data kemudian didekode dengan menggunakan unit proses yang disebut sebagai pendekoder instruksi yang sanggup menerjemahkan instruksi. Data kemudian berjalan ke unit aritmatika dan logika (ALU) yang melakukan kalkulasi dan perbandingan. Data bisa jadi disimpan sementara oleh ALU dalam sebuah lokasi memori yang disebut dengan register supaya dapat diambil kembali dengan cepat untuk diolah. ALU dapat melakukan operasi-operasi tertentu, meliputi penjumlahan, perkalian, pengurangan, pengujian kondisi terhadap data dalam register, hingga mengirimkan hasil pemrosesannya kembali ke memori fisik, media penyimpan, atau register apabila akan mengolah hasil pemrosesan lagi. Selama proses ini terjadi, sebuah unit dalam CPU yang disebut dengan penghitung program akan memantau instruksi yang sukses dijalankan supaya instruksi tersebut dapat dieksekusi dengan urutan yang benar dan sesuai.
JARINGAN – JARINGAN KOMPUTER
JARINGAN WLAN
Yaitu jaringan suatu local area network yang menggunakan gelombang elektromagntik sebagai media penyalur data pengganti kabel.
JARINGAN  LAN
Yaitu suatu jaringan system computer yang lokasinya terbatas dalam suatu tempat dan tidak menggunakan media fasilitas komunikasi umum.
JARINGAN WIFI
Yaitu sekumpulan standart yang digunakan untuk jaringan local nirkabel yang didasari pada spesifikasi IEE 802.11.
JARINGAN HOTSPOT
Yaitu zona yang meminginkan seorang bias melakukan akses internet secara nirkabel.
SISTEM KOMPONEN PADA KOMPUTER ADA 2 MACAM,yaitu :
1.      HARDWARE
Hardware merupakan komponen / perangkat keras pada computer ,seperti : mother board, hard disk, ram, monitor, keyboard, mouse dll.
2.      SOFTWARE
Software merupakan komponen / perangkat lunak pada computer, seperti program yang akan diaplikasikan pada unit computer, contoh : windows dll.
Bagian-bagian komputer
Komputer terdiri atas 2 bagian besar yaitu perangkat lunak (software) dan perangkat keras (hardware).
Perangkat keras
Prosesor atau CPU sebagai unit yang mengolah data
Memori RAM, tempat menyimpan data sementara
Hard drive, media penyimpanan semi permanen
Perangkat masukan, media yang digunakan untuk memasukkan data untuk diproses oleh CPU, seperti mouse, keyboard, dan tablet
Perangkat keluaran, media yang digunakan untuk menampilkan hasil keluaran pemrosesan CPU, seperti monitor dan printer
Perangkat lunak
Sistem operasi
Program dasar pada komputer yang menghubungkan pengguna dengan hardware komputer. Sistem operasi yang biasa digunakan adalah Linux, Windows, dan Mac OS. Tugas sistem operasi termasuk (namun tidak hanya) mengatur eksekusi program di atasnya, koordinasi input, output, pemrosesan, memori, serta instalasi software.
ROM adalah Read Only Memory
RAM adalah Random Access Memory
Satuan – satuan memory adalah byte
1 kb adalah 1024 byte
1 mb adalah 1024 kb
1 gb adalah 1024 kb


KOMPONEN-KOMPONEN CPU
Komponen CPU terbagi menjadi beberapa macam, yaitu sebagai berikut.
Unit kontrol yang mampu mengatur jalannya program. Komponen ini sudah pasti terdapat dalam semua CPU.CPU bertugas mengontrol komputer sehingga terjadi sinkronisasi kerja antar komponen dalam menjalankan fungsi-fungsi operasinya. termasuk dalam tanggung jawab unit kontrol adalah mengambil intruksi-intruksi dari memori utama dan menentukan jenis instruksi tersebut. Bila ada instruksi untuk perhitungan aritmatika atau perbandingan logika, maka unit kendali akan mengirim instruksi tersebut ke ALU. Hasil dari pengolahan data dibawa oleh unit kendali ke memori utama lagi untuk disimpan, dan pada saatnya akan disajikan ke alat output. Dengan demikian tugas dari unit kendali ini adalah:
• Mengatur dan mengendalikan alat-alat input dan output.
• Mengambil instruksi-instruksi dari memori utama.
• Mengambil data dari memori utama (jika diperlukan) untuk diproses.
• Mengirim instruksi ke ALU bila ada perhitungan aritmatika atau perbandingan logika serta        mengawasi kerja dari ALU.
• Menyimpan hasil proses ke memori utama.
Register merupakan alat penyimpanan kecil yang mempunyai kecepatan akses cukup tinggi, yang digunakan untuk menyimpan data dan/atau instruksi yang sedang diproses. Memori ini bersifat sementara, biasanya di gunakan untuk menyimpan data saat di olah ataupun data untuk pengolahan selanjutnya. Secara analogi, register ini dapat diibaratkan sebagai ingatan di otak bila kita melakukan pengolahan data secara manual, sehingga otak dapat diibaratkan sebagai CPU, yang berisi ingatan-ingatan, satuan kendali yang mengatur seluruh kegiatan tubuh dan mempunyai tempat untuk melakukan perhitungan dan perbandingan logika.
ALU unit yang bertugas untuk melakukan operasi aritmetika dan operasi logika berdasar instruksi yang ditentukan. ALU sering di sebut mesin bahasa karena bagian ini ALU terdiri dari dua bagian, yaitu unit arithmetika dan unit logika boolean yang masing-masing memiliki spesifikasi tugas tersendiri. Tugas utama dari ALU adalah melakukan semua perhitungan aritmatika (matematika) yang terjadi sesuai dengan instruksi program. ALU melakukan semua operasi aritmatika dengan dasar penjumlahan sehingga sirkuit elektronik yang digunakan disebut adder.
Tugas lain dari ALU adalah melakukan keputusan dari suatu operasi logika sesuai dengan instruksi program. Operasi logika meliputi perbandingan dua operand dengan menggunakan operator logika tertentu, yaitu sama dengan (=), tidak sama dengan (<> ), kurang dari (<), kurang atau sama dengan (<= ), lebih besar dari (>), dan lebih besar atau sama dengan (>= ).
CPU Interconnections adalah sistem koneksi dan bus yang menghubungkan komponen internal CPU, yaitu ALU, unit kontrol dan register-register dan juga dengan bus-bus eksternal CPU yang menghubungkan dengan sistem lainnya, seperti memori utama, piranti masukan /keluaran.
Arsitektur Von Neumann menggambarkan komputer dengan empat bagian utama: Unit Aritmatika dan Logis (ALU), unit kontrol, memori, dan alat masukan dan hasil (secara kolektif dinamakan I/O). Bagian ini dihubungkan oleh berkas kawat, "bus"
Memori
 modul memori RAM
Di sistem ini, memori adalah urutan byte yang dinomori (seperti "sel" atau "lubang burung dara"), masing-masing berisi sepotong kecil informasi. Informasi ini mungkin menjadi perintah untuk mengatakan pada komputer apa yang harus dilakukan. Sel mungkin berisi data yang diperlukan komputer untuk melakukan suatu perintah. Setiap slot mungkin berisi salah satu, dan apa yang sekarang menjadi data mungkin saja kemudian menjadi perintah.
Memori menyimpan berbagai bentuk informasi sebagai angka biner. Informasi yang belum berbentuk biner akan dipecahkan (encoded) dengan sejumlah instruksi yang mengubahnya menjadi sebuah angka atau urutan angka-angka. Sebagai contoh: Huruf F disimpan sebagai angka desimal 70 (atau angka biner ) menggunakan salah satu metode pemecahan. Instruksi yang lebih kompleks bisa digunakan untuk menyimpan gambar, suara, video, dan berbagai macam informasi. Informasi yang bisa disimpan dalam satu sell dinamakan sebuah byte.
Secara umum, memori bisa ditulis kembali lebih jutaan kali - memori dapat diumpamakan sebagai papan tulis dan kapur yang dapat ditulis dan dihapus kembali, daripada buku tulis dengan pena yang tidak dapat dihapus.
Ukuran masing-masing sel, dan jumlah sel, berubah secara hebat dari komputer ke komputer, dan teknologi dalam pembuatan memori sudah berubah secara hebat - dari relay elektromekanik, ke tabung yang diisi dengan air raksa (dan kemudian pegas) di mana pulsa akustik terbentuk, sampai matriks magnet permanen, ke setiap transistor, ke sirkuit terpadu dengan jutaan transistor di atas satu chip silikon.
Pemrosesan
Unit Pemproses Pusat atau CPU ( central processing unit) berperanan untuk memproses arahan, melaksanakan pengiraan dan menguruskan laluan informasi menerusi system komputer. Unit atau peranti pemprosesan juga akan berkomunikasi dengan peranti input , output dan storan bagi melaksanakan arahan-arahan berkaitan.
Berkas:CPU with pins.jpg
Contoh sebuah CPU dalam kemasan Ball Grid Array (BGA) ditampilkan terbalik dengan menunjukan kaki-kakinya
Dalam arsitektur von Neumann yang asli, ia menjelaskan sebuah Unit Aritmatika dan Logika, dan sebuah Unit Kontrol. Dalam komputer-komputer modern, kedua unit ini terletak dalam satu sirkuit terpadu (IC - Integrated Circuit), yang biasanya disebut CPU (Central Processing Unit).
Unit Aritmatika dan Logika, atau Arithmetic Logic Unit (ALU), adalah alat yang melakukan pelaksanaan dasar seperti pelaksanaan aritmatika (tambahan, pengurangan, dan semacamnya), pelaksanaan logis (AND, OR, NOT), dan pelaksanaan perbandingan (misalnya, membandingkan isi sebanyak dua slot untuk kesetaraan). Pada unit inilah dilakukan "kerja" yang nyata.
Unit kontrol menyimpan perintah sekarang yang dilakukan oleh komputer, memerintahkan ALU untuk melaksanaan dan mendapat kembali informasi (dari memori) yang diperlukan untuk melaksanakan perintah itu, dan memindahkan kembali hasil ke lokasi memori yang sesuai. Sekali yang terjadi, unit kontrol pergi ke perintah berikutnya (biasanya ditempatkan di slot berikutnya, kecuali kalau perintah itu adalah perintah lompatan yang memberitahukan kepada komputer bahwa perintah berikutnya ditempatkan di lokasi lain).
Input dan hasil
I/O membolehkan komputer mendapatkan informasi dari dunia luar, dan menaruh hasil kerjanya di sana, dapat berbentuk fisik (hardcopy) atau non fisik (softcopy). Ada berbagai macam alat I/O, dari yang akrab keyboard, monitor dan disk drive, ke yang lebih tidak biasa seperti webcam (kamera web, printer, scanner, dan sebagainya.
Yang dimiliki oleh semua alat masukan biasa ialah bahwa mereka meng-encode (mengubah) informasi dari suatu macam ke dalam data yang bisa diolah lebih lanjut oleh sistem komputer digital. Alat output, men-decode data ke dalam informasi yang bisa dimengerti oleh pemakai komputer. Dalam pengertian ini, sistem komputer digital adalah contoh sistem pengolah data.
Instruksi
Perintah yang dibicarakan di atas bukan perintah seperti bahasa manusiawi. Komputer hanya mempunyai dalam jumlah terbatas perintah sederhana yang dirumuskan dengan baik. Perintah biasa yang dipahami kebanyakan komputer ialah "menyalin isi sel 123, dan tempat tiruan di sel 456", "menambahkan isi sel 666 ke sel 042, dan tempat akibat di sel 013", dan "jika isi sel 999 adalah 0, perintah berikutnya anda di sel 345".
Instruksi diwakili dalam komputer sebagai nomor - kode untuk "menyalin" mungkin menjadi 001, misalnya. Suatu himpunan perintah khusus yang didukung oleh komputer tertentu diketahui sebagai bahasa mesin komputer. Dalam prakteknya, orang biasanya tidak menulis perintah untuk komputer secara langsung di bahasa mesin tetapi memakai bahasa pemrograman "tingkat tinggi" yang kemudian diterjemahkan ke dalam bahasa mesin secara otomatis oleh program komputer khusus (interpreter dan kompiler). Beberapa bahasa pemrograman berhubungan erat dengan bahasa mesin, seperti assembler (bahasa tingkat rendah); di sisi lain, bahasa seperti Prolog didasarkan pada prinsip abstrak yang jauh dari detail pelaksanaan sebenarnya oleh mesin (bahasa tingkat tinggi)
Arsitektur
Komputer kontemporer menaruh ALU dan unit kontrol ke dalam satu sirkuit terpadu yang dikenal sebagai Central Processing Unit atau CPU. Biasanya, memori komputer ditempatkan di atas beberapa sirkuit terpadu yang kecil dekat CPU. Alat yang menempati sebagian besar ruangan dalam komputer adalah ancilliary sistem (misalnya, untuk menyediakan tenaga listrik) atau alat I/O.
Beberapa komputer yang lebih besar berbeda dari model di atas di satu hal utama - mereka mempunyai beberapa CPU dan unit kontrol yang bekerja secara bersamaan. Terlebih lagi, beberapa komputer, yang dipakai sebagian besar untuk maksud penelitian dan perkomputeran ilmiah, sudah berbeda secara signifikan dari model di atas, tetapi mereka sudah menemukan sedikit penggunaan komersial.
Fungsi dari komputer secara prinsip sebenarnya cukup sederhana. Komputer mencapai perintah dan data dari memorinya. Perintah dilakukan, hasil disimpan, dan perintah berikutnya dicapai. Prosedur ini berulang sampai komputer dimatikan.
Program
Program komputer adalah daftar besar perintah untuk dilakukan oleh komputer, barangkali dengan data di dalam tabel. Banyak program komputer berisi jutaan perintah, dan banyak dari perintah itu dilakukan berulang kali. Suatu [[Personal computer[PC]] modern yang umum (pada tahun 2003) bisa melakukan sekitar 2-3 milyar perintah dalam sedetik. Komputer tidak mendapat kemampuan luar biasa mereka lewat kemampuan untuk melakukan perintah kompleks. Tetapi, mereka melakukan jutaan perintah sederhana yang diatur oleh orang pandai, "programmer." "Programmer Baik memperkembangkan set-set perintah untuk melakukan tugas biasa (misalnya, menggambar titik di layar) dan lalu membuat set-set perintah itu tersedia kepada programmer lain." Dewasa ini, kebanyakan komputer kelihatannya melakukan beberapa program sekaligus. Ini biasanya diserahkan ke sebagai multitasking. Pada kenyataannya, CPU melakukan perintah dari satu program, kemudian setelah beberapa saat, CPU beralih ke program kedua dan melakukan beberapa perintahnya. Jarak waktu yang kecil ini sering diserahkan ke sebagai irisan waktu (time-slice). Ini menimbulkan khayal program lipat ganda yang dilakukan secara bersamaan dengan memberikan waktu CPU di antara program. Ini mirip bagaimana film adalah rangkaian kilat saja masih membingkaikan. Sistem operasi adalah program yang biasanya menguasai kali ini membagikan
Sistem operasi
Sistem operasi ialah semacam gabungan dari potongan kode yang berguna. Ketika semacam kode komputer dapat dipakai secara bersama oleh beraneka-macam program komputer, setelah bertahun-tahun, programer akhirnya menmindahkannya ke dalam sistem operasi.
Sistem operasi, menentukan program yang mana dijalankan, kapan, dan alat yang mana (seperti memori atau I/O) yang mereka gunakan. Sistem operasi juga memberikan servis kepada program lain, seperti kode (driver) yang membolehkan programer untuk menulis program untuk suatu mesin tanpa perlu mengetahui detail dari semua alat elektronik yang terhubung.
Penggunaan komputer
Komputer digital pertama, dengan ukuran dan biaya yang besar, sebagian besar mengerjakan perhitungan ilmiah. ENIAC, komputer awal AS semula didesain untuk memperhitungkan tabel ilmu balistik untuk persenjataan (artileri), menghitung kerapatan penampang neutron untuk melihat jika bom hidrogen akan bekerja dengan semestinya (perhitungan ini, yang dilakukan pada Desember 1945 sampai Januari 1946 dan melibatkan dala dalam lebih dari satu juta kartu punch, memperlihatkan bentuk lalu di bawah pertimbangan akan gagal). CSIR Mk I, komputer pertama Australia, mengevaluasi pola curah hujan untuk tempat penampungan dari Snowy Mountains, suatu proyek pembangkitan hidroelektrik besar. Yang lainnya juga dipakai dalam kriptanalisis, misalnya komputer elektronik digital yang pertama, Colossus, dibuat selama Perang Dunia II. Akan tetapi, visionaris awal juga menyangka bahwa pemrograman itu akan membolehkan main catur, memindahkan gambar dan penggunaan lain.
Orang-orang di pemerintah dan perusahaan besar juga memakai komputer untuk mengotomasikan banyak koleksi data dan mengerjakan tugas yang sebelumnya dikerjakan oleh manusia - misalnya, memelihara dan memperbarui rekening dan inventaris. Dalam bidang pendidikan, ilmuwan di berbagai bidang mulai memakai komputer untuk analisa mereka sendiri. Penurunan harga komputer membuat mereka dapat dipakai oleh organisasi yang lebih kecil. Bisnis, organisasi, dan pemerintah sering menggunakan amat banyak komputer kecil untuk menyelesaikan tugas bahwa dulunya dilakukan oleh komputer kerangka utama yang mahal dan besar. Kumpulan komputer yang lebih kecil di satu lokasi diserahkan ke sebagai perkebunan server.
Dengan penemuan mikroprosesor di 1970-an, menjadi mungkin menghasilkan komputer yang sangat murah. PC menjadi populer untuk banyak tugas, termasuk menyimpan buku, menulis dan mencetak dokumen. Perhitungan meramalkan dan lain berulang matematika dengan spreadsheet, berhubungan dengan e-pos dan, Internet. Namun, ketersediaan luas komputer dan mudah customization sudah melihat mereka dipakai untuk banyak maksud lain.
Sekaligus, komputer kecil, biasanya dengan mengatur memprogram, mulai menemukan cara mereka ke dalam alat lain seperti peralatan rumah, mobil, pesawat terbang, dan perlengkapan industri. Yang ini prosesor benam menguasai kelakuan alat seperti itu yang lebih mudah, membolehkan kelakuan kontrol yang lebih kompleks (untuk kejadian, perkembangan anti-kunci rem di mobil). Saat abad kedua puluh satu dimulai, kebanyakan alat listrik, kebanyakan bentuk angkutan bertenaga, dan kebanyakan batas produksi pabrik dikuasai di samping komputer. Kebanyakan insinyur meramalkan bahwa ini cenderung kepada akan terus.

Program komputer
Merupakan aplikasi tambahan yang dipasang sesuai dengan sistem operasinya