Pages - Menu

Monday, April 16, 2012

Bahasa C




Konstanta

Dalam bahasa C, konstanta dapat di buat menjadi dua cara, yaitu dengan memakai deklarasi cost,  atau dengan memanfaatkan fasilitas makro.

Format deklarasi konstanta ;

                Const [<type>] <nama> = <harga>;

Contoh :
            const double pi = 3.141592654;
       const float rad = 57.29577951;
       const umur = 40; //sama dengan const int umur = 40

Defenisi konstanta dengan kata kunci const baru ada dalam ANSI C.C “lama” (K&R) memakai preprossesor untuk mendefenisikan konstanta.

        # define pi 3.14
        #define rad 57.29
        #define umur 40

Perhatikan !!! bahwa preprosessor bekerja dengan melakukan substitusi makro (teks “umur” dalam ganti teks “40”, dst). Teks dalam string tidak disubstitusi.
Selain untuk menggantikan angka, dengan deklarasi konstantam karakter dan string (kumpulan karakter) juga dapat disubsitusi dengan suatu symbol-nama.

Tugas Architecture Computer

Program Komputer IAS
 
1. Buatlah program pada komputer IAS sebagai berikut, kemudian simpan program tersebut 
   di memori.
     -  Kalikan data di memori alamat 0551 dengan data memori alamat   0552
     -  Simpan hasil perkalian tersebut di memori (MSB di alamat 0556 dan 
        dialamat 0557)
     -  Jumlahkan data LSB hasil perkalian tersebut  dengan isi memori alamat 
       0553
     -  Simpan hasil penjumlahan tersebut di alamat 0559
 
Jawaban :

   1. LOAD MQ, M(0551)
      MUL M(0552)
   2. STOR M(0556)
      LOAD MQ
      STOR M(0557)
   3. ADD M(0553)
   4. STOR M(0559)

2. Program counter awal 0011
 
    a. Buat program dengan bahasa komputer IAS
    b. Gambar peta memori yang memperlihatkan isinya, dimana program dan data diletakkan.
    c. Tulislah urutan instruction cyrcle (cukup 3 siklus saja) fetch dan execution 
       cyrcle

Jawaban : 

a. Program Komputer IAS

b. Peta Memori 

Ket : 
         1, 2, 3, 4 adalah nilai


c. Instruction cycle

1.      Instruction cycle 1
Fetch 1 :
· PC = 0011
· PC MAR
· M(MAR) MBR
· MBR(20:39) IBR
· MBR(0:7) IR      : IR = LOAD to MQ
· MBR(8:19) MAR    : MAR = 0551
 
Execute 1:
· M(0551) MBR      : MBR = M(0551) = A
· MBR → MQ           : MQ = A

2.      Instruction cycle 2
     Fetch 2 :
· IBR (0:7) IR     : IR = MUL
· IBR (8:19) → MAR   : MAR = M(0552)
· PC = PC + 1
          Execute 2 : 
· M(0552) MBR     : MBR = MAR(0552) = B 
· MSB(MBR*MQ) AC  : AC = MSB(MBR*MQ)
. LSB(MBR*MQ) MQ  : MQ = LSB(MBR*MQ)

3.      Instruction cycle 3
      Fetch 3 :
· PC MAR           : MAR = PC = 0012
· M(MAR) MBR       : MBR = M(0012)
· MBR(0:7) IR      : IR = STOR
· MBR(8:19) MAR    : MAR = M(0556)
· MBR(20:39) IBR
 
Execute 3 :
· AC MBR        : MBR = AC = MSB(M(0552)*MQ)
· MBR M(MAR)    : M(0556) = MBR

4.      Instruction cycle 4
     Fetch 4 :
· IBR (0:7) IR   : IR = LOAD MQ to AC
· PC = PC + 1
 
Execute 4 :
· MQ AC  : AC = MQ = LSB(MQ*M(0552))

5.      Instruction cycle 5
     Fetch 5 :
· PC MAR           : MAR = PC = 0013
· M(MAR) MBR       : MBR = M(0013)
· MBR(0:7) IR      : IR = STOR
· MBR(8:19) → MAR    : MAR = M(0557)
· MBR(20:39) IBR
 
Execute 5 :
· AC MBR      : MBR = AC = LSB(M(0552)*MQ)
· MBR M(MAR)  : M(0556) = MBR
6.      
        Instruction cycle 6
     Fetch 6 :
· IBR (0:7) IR     : IR = ADD
· IBR (8:19) MAR   : MAR = M(0553)
· PC = PC + 1
 
Execute 6 :
· M(0553) MBR   : MBR = MAR(0553) = B
· MBR + AC AC

7.      Instruction cycle 7
      Fetch 7 :
· PC MAR          : MAR = PC = 0014
· M(MAR) → MBR      : MBR = M(0014)
· MBR(0:7) IR     : IR = STOR
· MBR(8:19) MAR   : MAR = M(0559)
 
 Execute 7 :
· AC MBR          : MBR = AC
· MBR M(MAR)      : M(0559) = MBR

Sunday, April 15, 2012

Conversi Variabel


Mengenal Variabel dalam Bahasa C

Variabel (identifier)
      a.       Untuk mewakili suatu nilai tertentu didalam proses program,
      b.      Nilai dari suatu variabel bisa diubah- ubah sesuai kebutuhan,
      c.       Nama dari suatu variabel dapat ditentukan sendiri oleh pemrograman dengan aturan :
-          Terdiri dari gabungan huf dan angka dengan karakter pertama harus berupa huruf.
-          Tidakboleh mengandung spasi, panjangnya bebas, tapi hanya 32  karakter pertama yang dipakai.
-          Tidak boleh mengandung symbol-symbol khusus, kecuali garis bawah (underscore). Symbol khusus yang tidak bisa digunakan antara lain ; $, ?, %,  #, !, &, *, (, ), -, +, = dsb.
Contoh penamaan variabel  ; NIM, a, x, nama_mhs, f1, nilai, saya, dsb.
Deklarasi variabel

Contoh ;
            int x;// Deklarasi variabel (x) bertipe integer
       char y, huruf, nim [10];// Deklarasi variabel bertipe char
       float nilai;// Deklarasi variabel bertipe float
       double beta;// Deklarasi variabel bertipe double

Konversi variabel
            %c          : Membaca sebuah karakter (char)
            %s          : Membaca sebuah string
            %i, %d    : Membaca sebuah bilangan bulat (integer)
%f, %e    : Membaca sebuah bilangan pecahan (real)
%o          : Membaca sebuah bilangan octal
%x          : Membaca sebuah bilangan hexadesimal
%u          : Membaca sebuah bilangan tak bertanda

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int main (void)
{
       char kalimat_1[11], kalimat_2[11]; 
       strcpy(kalimat_1,"TMD ITB"); //Menyalin string
       printf("Kalimat_1:\n%s\n", kalimat_1);
       strcpy(kalimat_2,kalimat_1); //Menyalin string
       printf("Kalimat_2:\n%s\n", kalimat_2);
       system("pause");
       return(0);
}

Perintah Dasar C++

Mengenal Perintah Dasar Pada Bahasa C++

A. Perintah pengambilan keputusan

  • Perintah IF
Perintah IF berguna untuk satu dari dua atau lebih alternatif jawaban yang tersedia, jika perintah IF tersebut terdiri dari dua atau lebih pernyataa, maka pernyaraan tersebut haris berada antara bagian begin dan end.

Bentuk sederhana untuk pernyataan IF;
             if(kondisi)
             { // blok pernyataan yang dijalankan // jika kondisi bernilai benar.
              }
Contoh :


  • Perintah SWITCH
Perintah SWITCH merupakan pernyataan yang dirancang untuk menangani pengambilan keputusan yang melibatkan sejumlah pilihan alternatif yang diantaranya untuk menggantikan pernyataan IF.

 Bentuk sederhana SWITCH ;
                    switch (ekspresi)
                    {  case nilai_pertama:
                        pernyataan_pertama; break;
                        case nilai_kedua: pernyataan_kedua; break;
                        case nilai_ketiga: pernyataan_ketiga; break;
                        ………. default: pernyataan_n;
                      } 
Pada Pernyataan SWITCH ;
- Masing-masing pernyataan (pernyataan_pertama sampai dengan pernyataa_n) dapat berupa satu atau   beberapa perintah dan tidak perlu berupa blog pernyataan,

- Pernyataan_pertama dijalankan jika nilai ekspresi sesuai dengan nilai_pertama. Setelah pernyataa_pertama dijalankan, eksekusi dilanjutkan ke akhir pernyataan SWITCH.

- Pernyataan_kedua dijalanka jika nilai ekspresi sesuai dengan nilai_kedua. setelah pernyataan_kedua dijalankan, eksekusi dilanjutkan ke akhir SWITCH

- Pernyataan_ketiga dijalankan jika nilai ekspresei sesuai dengan nilai_ketiga. Setelah pernyataa_ketiga dijalankan, eksekusi dilanjutkan ke akhir pernyataa SWITCH.

- Bagian default bersifat opsional. jika ada pada bagian ini hanya akan dijalankan jika nilai ekspresi tidak cocok dengan nilai_pertama, nilai_kedua dan seterusnya

- Pernyataan break digunakan untuk mengendalikan eksekusi ke akhir pernyataan SWITCH

Contoh :



B. Perintah Perulangan (Looping)

Perintah perulangan (looping) diguankan untuk melakukan suatu proses secara berulang-ulang, jika suatu kondisi dipenuhi atau sebaliknya. pada prakteknya, proses pengulangan biasanya digunaka untuk beberapa hal, misalnya; mengulang proses penampilan hasil pengolahan data. Perintah Perulangan (Looping) terdiri dari :
  • Perintah FOR
Proses looping yang menggunakan perhitungan (counter yang sudah pasti, misalnya;
          variabel k= 1, 2, ......, n;
                       j= m, m-1, .......,5; dan sebagainya dapat dibuat menggunakan pernyataan FOR.

Pernyataan FOR digunakan untuk menangani masalah pengulangan yang telah diketahui banyaknya, bentuk umum pengulangan dengan menggunakan perintah FOR adalah ;

                 or(variabel = nilai_awal; kondisi; variabel ++) 
                  {  
                            // pernyataan yang akan diulang    
                   } 


Contoh :


  • Perintah DO WHILE
Perintah ini menyatakan perualangan proses selama kondisi tertentu. Bentuk pernyataan DO WHILE adalah:

              do 
                   {
                                 // blok pernyataan yang dijalankan yang akan diulang 
                    } 
                    While (kondisi) 
Contoh :


  •  Perintah WHILE
Perintah While ini prinsipnya sama dengan DO WHILE, hanya saja pengujian kondisinya terletak pada awal. Bentuk pernyataan While:

                   while(kondisi)
                    {
                           // blok pernyataan 
                     }
Contoh :


  • Perintah BREAK
Perintah BREAK ini berfungsi untuk keluaran suatu loop for, do while, while ataupun switch. hanya saja, pada BREAK, proses akan menuju akhir switch. Contoh penggunaan perintah BREAK dapat dilihat pada contoh SWITCH.

Mengenal Bahasa C++

Header dan Fungsi 

Header merupakan sebuah tempat dimana kita memasukkan suatu fungsi sebagai perintah. Berikut ini adalah contoh program ;

                          #include <iostream>
           using namespace std;
           void main()
           {
              cout <<"Hello, World\n";
           }


"#" merupakan preprocessor directive. Artinya adalah perintah-perintah yang diberikan kepada compiler untuk melakukan defenisi.

"include"  (memasukkan), berarti kita melaukan input iostream kepada compiler
Perintah "cout" sendiri ada karena kita memasukkan iostream ke dalam kode program kita dan juga using namespace std; dimana ada member cout di dalamnya.

"main" merupakan fungsi utama yang harus ada dalam setiap pemrograman menggunakan Bahasa C++.
"\n"  merupakan sebuah perintah dalam Bahasa C++ untuk membuat garis baru yang di tampilkan program.

Sunday, April 1, 2012

Pengulangan Pada Bahasa C

Perulangan atau dalam istilah lain disebut dengan loop. Perulangan dipakai pada suatu masalah dalam jumlah besar yang membutuhkan penyelesaian terkadang sama dengan pola yang telah kita ketahui.

Contoh dari pengulangan ini dalam kehidupan nyata, Tulislkan “ini adalah perulangan” sebanyak 10 kali.
Pada masalah ini kita lihat ada 10 penyelesaian sama dengan pola yang sama. Disinilah perulangan sangat berguna,
pada bahasa pemograman C ada 3 macam perulangan, dengan menggunakan for, while, dan do-while.
  1. Struktur For.
Struktur ini digunakan bila kita mengetahui secara pasti banyaknya pengulangan yang akan dilakukan. Pernyataan For mempunyai 3 parameter yaitu ;
  • Nilai awal (initaial value) adalah memberikan nilai awal pada variabel kontrol 
  • Tes kondisi yang menentukan akhir loop (Condition Expression) adalah ekspresi yang menyatakan berhentinya pengulangan. Jika tes kondisi bernilai salah maka loop akan berhenti. 
  • Penentuan perubahan nilai (Incremental Expression) adalah menaikan atau menurunkan nilai variabel kontrol. Dapat berupa nilai positif (penaikan) atau nilai negatif (penurunan).
  • Penaikan : setiap loop operator “ ++ “ akan menambahkan 1 ke variabel kontrol.
  • Penurunan : setiap operator “ – ” akan mengurangi nilai 1 pada variabel kontrol

Bentuk umum :

for (ekspresi_1; ekspresi_2; ekspresi_3 )
{
    pernyataan;
}

Contoh :

int a;
for (a = 10; a > 5; --a)
{
   k = a%2;
   printf("Nilai = %d\n" , k);
}


  1. Struktur While
Struktur ini digunakan bila kita belum mengetahui secara pasti berapakakali banyaknya pengulangan yang dilakukan. Berakhir pengulangan ditentukan oleh sesuatu kondisi. Selama kondisi terpenuhi, maka pengulangan terus dilakukan, dan sebaliknya bila kondusi tidak terpenuhi maka pengulangan dihentikan.

Bentuk While:

while (kondisi)
{
   pernyataan;
}

Pernyataan akan dilaksanakan berulangkali selama kondisi bernilai true. Jika kondisi bernilai false badan pengulangan tidak akan dilaksanakan, yang berarti pengulangan selesai. Yang harus diperhatikan adalah pengulangan harus berhenti. Pengulangan yang tidak pernah berhenti menandakan bahwa logika algoritma tersebut salah.

int k,a = 10;
while (a > 5)
{
k = a%2;
printf("Nilai = %d\n" , k);
--a;
}

  1. Struktur Do-While
Do-While pada dasarnya sama dengan instruksi While. Perbedaannya hanya terletak pada penempatan ekspresi kondisi. Intuk Do-While, kondisi diletakkan pada bagian bawah. Jadi statemen yang berada dalam loop akan dikerjakan dahulu baru dilakukan tes terhadap kondisi.

Bentuk Umum :

do
{
   pernyataan;
}
while (kondisi);

contoh :

int k,a = 3;
do
{
   k = a%2;
   printf("Nilai = %d\n" , k);
   --a;
}
while (a > 5);