Selasa, 20 Mei 2014

Program Delphi untuk Menampilkan Keterangan Nilai dan Menentukan Kuadran


Disini contoh syntax untuk menampilkan keterangan nilai dan menentukan kuadran pada Delphi 7, berikut syntax dan hasil programnya :

1.       Keterangan Nilai

procedure TForm1.Button1Click(Sender: TObject);
var nilai:integer;
begin
    nilai:=StrToInt(Edit1.Text);
    if nilai<=15 then Edit2.Text:='E'
    else
    if nilai<=40 then Edit2.Text:='D'
    else
    if nilai<=60 then Edit2.Text:='C'
    else
    if nilai<=80 then Edit2.Text:='B'
    else
    Edit2.Text:='A'
end;
  procedure TForm1.Button2Click(Sender: TObject);
begin
    Edit1.Clear;
    Edit2.Clear;
end;
 procedure TForm1.Button3Click(Sender: TObject);
begin
    Application.Terminate;
end;
 end.
 
2.       Menentukan Kuadran


procedure TForm1.Button1Click(Sender: TObject);
var x , y : Integer;
begin
x:=StrToInt(edit1.Text);
y:=StrToInt(edit2.Text);
if ( x > 0 ) and ( y > 0 ) then
label3.Caption:= 'Kuadran I'
else
if ( x < 0 ) and ( y > 0 ) then
label3.Caption:= 'Kuadran II'
else
if ( x < 0 ) and ( y < 0 ) then
label3.Caption:= 'Kuadran III'
else
if ( x > 0 ) and ( y < 0 ) then
label3.Caption:= 'Kuadran IV'
 end;
 end.
 

»»  Read More...

Proses Kerja Pipeline di dalam Processor



Pipelining, merupakan fitur standar pada prosesor RISC, tidak sama dengan assembly line. Karena prosesor bekerja pada berbagai langkah dari instruksi pada saat yang sama, beberapa pekerjaan bisa dilaksanakan dalam jangka waktu yang lebih singkat.

Teknologi Pipeline yang digunakan pada komputer bertujuan untuk meningkatkan kinerja dari komputer.

Secara sederhana, pipeline adalah suatu cara yang digunakan untuk melakukan sejumlah kerja secara bersamaan tetapi dalam tahap yang berbeda yang dialirkan secara berlanjut pada unit pemrosesan. Dengan cara ini, maka unit pemroses akan selalu bekerja.

Teknik pipeline ini dapat diterapkan pada berbagai tingkatan dalam sistem komputer. Bisa pada level yang tinggi, misalnya program aplikasi, sampai pada tingkat yang rendah, seperti pada instruksi yang dijalankan oleh microprocessor.

Teknik pipeline yang diterapkan pada microprocessor, dapat dikatakan sebuah arsitektur khusus. Ada perbedaan khusus antara model microprocessor yang tidak menggunakan arsitektur pipeline dengan microprocessor yang menerapkan teknik ini.

1. Pada microprocessor yang tidak menggunakan pipeline, satu instruksi dilakukan sampai selesai, baru instruksi berikutnya dapat dilaksanakan.
2. Pada microprocessor yang menggunakan teknik pipeline, ketika satu instruksi sedangkan diproses, maka instruksi yang berikutnya juga dapat diproses dalam waktu yang bersamaan. Tetapi, instruksi yang diproses secara bersamaan ini, ada dalam tahap proses yang berbeda. Jadi, ada sejumlah tahapan yang akan dilewati oleh sebuah instruksi.

Misalnya sebuah microprocessor menyelesaikan sebuah instruksi dalam 4 langkah, Ketika instruksi pertama masuk ke langkah 2, maka instruksi berikutnya diambil untuk diproses pada langkah 1 instruksi tersebut. Begitu seterusnya, ketika instruksi pertama masuk ke langkah 3, instruksi kedua masuk ke langkah 2 dan instruksi ketiga masuk ke langkah 1.

Dengan penerapan pipeline ini pada microprocessor akan didapatkan peningkatan dalam unjuk kerja microprocessor. Hal ini terjadi karena beberapa instruksi dapat dilakukan secara parallel dalam waktu yang bersamaan. Secara kasarnya diharapkan akan didapatkan peningkatan beberapa kali dibandingkan dengan microprocessor yang tidak menggunakan pipeline, apabila tahapan yang ada dalam satu kali pemrosesan instruksi adalah banyak tahap.

Teknik pipeline ini menyebabkan ada sejumlah hal yang harus diperhatikan sehingga ketika diterapkan dapat berjalan dengan baik.

Tiga kesulitan yang sering dihadapi ketika menggunakan teknik pipeline ini adalah :
1. Terjadinya penggunaan resource yang bersamaan
2. Ketergantungan terhadap data
3. Pengaturan Jump ke suatu lokasi memori.

Karena beberapa instruksi diproses secara bersamaan ada kemungkinan instruksi tersebut sama-sama memerlukan resource yang sama, sehingga diperlukan adanya pengaturan yang tepat agar proses tetap berjalan dengan benar. Sedangkan ketergantungan terhadap data, bisa muncul, misalnya instruksi yang berurutan memerlukan data dari instruksi yang sebelumnya.

Kasus Jump, juga perlu perhatian, karena ketika sebuah instruksi meminta untuk melompat ke suatu lokasi memori tertentu, akan terjadi perubahan program counter, sedangkan instruksi yang sedang berada dalam salah satu tahap proses yang berikutnya mungkin tidak mengharapkan terjadinya perubahan program counter.

Dengan menerapkan teknik pipeline ini, akan ditemukan sejumlah perhatian yang khusus terhadap beberapa hal di atas, tetapi tetap akan menghasilkan peningkatan yang berarti dalam kinerja microprocessor. Ada kasus tertentu yang memang sangat tepat bila memanfaatkan pipeline ini, dan juga ada kasus lain yang mungkin tidak tepat bila menggunakan teknologi pipeline.

Gambar pipeline :



lima tahap pipeline pada mesin RISC:
1. IF - Instruksi Fetch unit
Biasanya disebut sebagai "unit beban" dalam terminologi modern. Instruksi yang ditunjuk oleh PC diambil dari memori ke register instruksi CPU, dan PC bertambah untuk menunjuk ke instruksi berikutnya dalam memori.

2. ID - Instruksi Decode unit
Unit ini mendapat instruksi dari IF, dan ekstrak opcode dan operand dari instruksi. Instruksi yang diterjemahkan, dan pada paruh kedua dari tahap Operand ditransfer dari register file ke input ALU register. Ini juga mengambil nilai-nilai mendaftar jika diminta oleh operasi

3. EXE – Excute (Pelaksanaan) unit
Menjalankan instruksi, biasanya disebut sebagai ALU dalam terminologi modern.
Logika dan operasi aritmatika yang dijalankan pada operand yang berasal dari ID stage. Hasil dari operasi dapat menjadi nilai yang akan ditulis kembali dalam register file atau alamat dari data memori untuk diakses pada tahap berikutnya.

4. MEM - Memory unit akses
Unit yang MEM menjemput data dari memori utama, di bawah kontrol instruksi dari ID dan EX.
Data memori diakses (baik membaca atau menulis).

5. WB – Write Back unit
Biasanya disebut sebagai “load-store” dalam terminologi modern. Pada tahapan ini, disediakan saluran bagi DLX sehingga dapat menyimpan kembali register untuk tahap eksekusi (EX). Hal ini dapat mempercepat pelaksanaan operasi register ke register oleh ALU yang berada dalam tahap eksekusi.
Dalam siklus waktu keempat (kolom hijau), paling awal adalah instruksi dalam tahap Mem, dan instruksi terbaru belum masuk set pipelining.

Generic Pipeline
ada 4 tahapan dalam generic pipeline :
1. Fetch
2. Decode
3. Execute
4. Write-back



»»  Read More...

Penjumlahan Matrik pada Pascal


Berikut adalah contoh program penjumlahan matrik pada pascal...
program matrik; 
uses wincrt; 
type data = array[1..5,1..5] of integer; 
var 
matrikI,matrikII : data; 
baris,kolom,pil : integer; 
procedure isi; 
var i,j :integer; 
begin
writeln('Penentuan ORDO MATRIK I');     
write('Masukan banyak baris matrik I : ');    
readln(baris);     
write('Masukan banyak kolom matrik I : ');    
readln(kolom);     
for i:=1 to baris do    
for j:=1 to kolom do     
begin gotoxy(j*10,i*5);           
readln(matrikI[i,j]);     
end;     
clrscr;     
writeln('Penentuan ORDO MATRIK II');     
write('Masukan banyak baris matrik II : ');     
readln(baris);     
write('Masukan banyak kolom matrik II : ');     
readln(kolom);     
for i:=1 to baris do     
for j:=1 to kolom do     
begin gotoxy(j*10,i*5);           
readln(matrikII[i,j]);     
end; 
end; 
procedure jumlah(a1,a2 : data); 
var  
hasil:data;i,j:integer;
begin     
for i:=1 to baris do     
for j:=1 to kolom do     
begin          
hasil[i,j]:=a1[i,j]+a2[i,j];     
end;     
clrscr;     
writeln('Hasil Penjumlahan');     
for i:=1 to baris do     
for j:=1 to kolom do     
begin 
gotoxy(j*10,i*5);           
write(hasil[i,j]);     
end; 
end; 
begin     
writeln('Penjumlahan Matrik');     
begin     
isi;     
jumlah(matrikI,matrikII);     
end; 
end.

Selamat mencoba.... :)
»»  Read More...

Menampilkan Bilangan Genap pada Pascal

Berikut adalah syntax untuk menampilkan bilangan genap dari A sampai B...

uses wincrt;
var a,b,c,i : integer;
begin
writeln ('MENAMPILKAN BILANGAN GENAP DARI A SAMPAI B');
write ('Masukan A : ');
readln (a);
write ('Masukan Nilai B :');
readln (b);
clrscr;
writeln ('Bilangan genapnya SBB:');
for i := b downto a do
begin
     if (b mod 2 = 0) then
     begin
          c := b;
          write (c);
     end;
     b := b-1;
end;
end.

Selamat belajar !! ^_^ 
»»  Read More...

Minggu, 10 November 2013

Matriks Gauss dan Gauss Jordan

Matriks adalah susunan bilangan dalam suatu persegi panjang yang diatur berdasarkan baris dan kolom.
Disini saya akan memberikan contoh matriks gauss dan gauss jordan..

langsung saja download disini matriks gauss dan gauss jordan

selamat belajar !!! ^_^
»»  Read More...