Script pertama-q

Sturktur Data

SELAMAT BELAJAR

STMIK KHARISMA KARAWANG Dhesie Dwi Sagita

Minggu, 20 Desember 2009

Sistem Operasi Bab II-IV

Tugas Sistem Operasi
BAB II

1. a. Aktifitas Sistem Operasi yang berhubungan dengan Manajemen proses :
pembuatan dan penghapusan proses yang dibuat oleh user/system
menghentikan proses sementara dan melanjutkan proses.
Menyediakan kelengkapan mekanisme untuk sinkronisasi proses dan komunikasi proses.
b. Aktifitas Sistem Operasi yang berhubungan dengan Manajemen Memori utama :
Menjaga dan memelihara bagian bagian memori yang sedang digunakan dan dari yang menggunakan
Memutuskan proses-proses mana saja yang harus dipanggil ke memori jika tersedia ruang di memori
Mengalokasikan dan mendealokasikan ruang memori jika diperlukan
c. Aktifitas Sistem Operasi yang berhubungan dengan Manajemen file :
Pembuatan dan pengahpusan file
Pembuatan dan penghapusan direktori
Primitive-primitif yang mendukung untuk manipulasi file dan direktori
Pemetaan file ke memori sekunder
Backup file media penyimpanan yang stabil ( nonvolatile)
2. Kegunaan system command interpreter :
Manajemen dan pembuatan proses
Penanganan I/O
Manajemen penyimpan sekunder
Manajemen memori utama
Akses system file
Proteksi
Jaringan
3. Sistem call adalah suatu bentuk komunikasi antara user dan hardware.
Contoh system call adalah pada program C, system call untuk READ, count = read (file,buffer, nbytes)
4. Sistem program adalah segala jenis perangakat lunak yang dibutuhkan untuk menjalankan program aplikasi/ pembentukan suatu sistem .
5. Keuntungan system layer :
Teknik pendekatan terlapis dibuat dengan menggunakan pendekatan top-down.
Semua fungsi ditentukan dan dibagi menjadi komponen – komponen.
Modularisasi system dilakukan dengan cara memecah system operasi menjadi beberapa lapis.
Dengan system modularisasi, setiap lapisan mempunyai fungsi tertentu dan melayani lapisan yang lebih rendah.
6. Keuntungan dan kerugian system virtual memori :
Konsep mesin virtual menyedikan proteksi yang lengkap untuk sumber daya system sehingga masing-masing mesin virtual dipisahkan dengan mesin virtual lain. Isolasi ini tidak memperbolehkan pembagian sumber daya secara langsung.
Pengembangan system dikerjakan pada mesin virtual, termasuk didalamnya mesin fisik dan tidak mengganggu opersi system yang normal.
Konsep mesin virtual sangat sulit untuk mengimplementasikan kebutuhan dan duplikasi yang tepa pada mesin yang sebenarnya.



(BAB 4)
Penjadwalan CPU

1. Perbedaan Penjadwalan Preemptive dan non Preemptive

- Penjadwalan preemptive
Keputusan penjadwalan CPU dilakukan apabila proses berpindah dari keadaan running
ke ready atau proses berpindah dari waiting ke ready.
- Penjadwalan non preemptive
Keputusan penjadwalan CPU dilakukan apabila proses berpindah dari running
ke waiting atau apabila proses berhenti.

2. Diketahui :

Burst time = 10 , 6 , 2, 4 , 8
Priority = 3 , 5 , 2 , 1 , 4 (5 adalah prioritas tertinggi)

a).Menggunakan Algoritma Round Robin (quantum time = 2)


Waktu tunggu untuk untuk P1 = 5, P2 = 3, P3 = 4, P4 = 2, P5 = 4
Rata-rata waktu tunggu (turn around) = (5 + 3 + 4 + 2 + 4) / 5 = 3,6

b).Menggunakan Algoritma Priority



Waktu tunggu untuk P1 = 14, P2 = 0, P3 = 24, P4 = 26, P5 = 6
Rata-rata waktu tunggu (turn around) = (14 + 0 + 24 + 26 + 6) / 5 = 14

c).Menggunakan Algoritma Shortest Job First




Waktu tunggu untuk P1 = 0, P2 = 16, P3 = 10, P4 = 12, P5 = 22
Rata-rata waktu tunggu (turn around) = (0 + 16 + 10 + 12 + 22) / 5 = 12

3. Diketahui :




a). Menggunakan Algoritma FCFS



Waktu tunggu untuk P1 = 0, P2 = 8, P3 = 12
Rata-rata waktu tunggu (turn around) = (0 + 8 + 12) / 3 = 6,6

b). Menggunakan Algoritma SJF non preemptive



Waktu tunggu untuk P1 = 0
P2 = 9 – 0,4 = 8,6
P3 = 8 – 1 = 7
Rata-rata waktu tunggu (turn around) = (0 + 8,6 + 7) / 3 = 5,2

c). Menggunakan Algoritma SJF preemptive / SRTF



Waktu tunggu untuk P1 = 5 – 0 = 5
P2 = 4,8 – 0,4 = 4,4
P3 = 1 – 1 = 0
Rata-rata waktu tunggu (turn around) = (5 + 4,4 + 0) / 3 = 3,13


d). Menggunakan Algoritma Round Robin (quantum time = 1)



Waktu tunggu untuk P1 = 8, P2 = 4, P3 = 2
Rata-rata waktu tunggu (turn around) = (8 + 4 + 2) / 3 = 4,6

4. Hubungan antara pasangan algoritma

a). Priority dan SJF
Algoritma SJF adalah Algoritma Priority untuk menyelesaikan suatu kasus khusus
b). Priority dan FCFS
Algoritma FCFS adalah Algoritma Priority yang memiliki prioritas sama.
c). Round Robin dan FCFS
Algoritma Round Robin adalah Algoritma FCFS yang bersifat preemptive
dan menggunakan time-sharing.

Nama : Dhesie Dwi Sagita
NPM : 43E57006085018
Prodi : Teknik Informatika Malam

Minggu, 06 September 2009

Sistem Operasi Bab III ( Proses Proses )

1. State Process/status proses adalah bagian dari aktivitas proses yang sedang berlangsung saat itu. Status Process terdiri dari 3 Status Utama dan 2 Status Tambahan. Status Utama terdiri dari :
Running merupakan status yang dimiliki pada saat instruksi-instruksi dari sebuah proses dieksekusi.
Waiting adalah saat proses menunggu beberapa event yang akan terjadi.
Ready status pada saat proses siap untuk dieksekusi.
Status Tambahan ada 2 yaitu :
New saat proses sedang dibuat
Terminate yaitu proses telah selesai di eksekusi.
Penjelasan diagram proses :
Status proses, New, ready, running, waiting dan terminated.
Proses Counter, menunjukkan alamat berikutnya ang akan dieksekusi oleh proses tersebut.
CPU Register. Register bervariasi tipe dan jumlahnyatergantung arsitektur komputer yang bersangkutan. Register-register tersebut terdiri atas : accumulator, index register, srtack pointer, dan register serbaguna dan beberapa informasi tentang kode kondisi. Selama program counter berjalan, status informasi harus disimpan pada saat terjadi interrupt.
Informasi Penjadwalan CPU. Informasi tersebut berisi prioritas dari suatu proses,pointer ke antrian penjadwala, dan beberapa parameter penjadwalan yang lainnya.
Informasi Manajemen Memori. Informasi tersebut berisi nilai (basis) dan limit register, page table atau segmen table tergantung system memori yang digunakan oleh SO.
Informasi Accounting. Informasi tersebut berisi jumlah CPU dan real time yang digunakan,time limit, account number, jumlah job atau proses dll.
Informasi status I/O. informasi tersebut berisi deretan I/O device (seperti tape driver) yang dialokasikan untuk proses tersebut, deretan file yang dibuka, dll.
2. Ada dua bentuk tipe penjadwalan yaitu :
Short term scheduler (CPU scheduler), memilih proses-proses yang siap dieksekusi, dan mengalokasikan CPU ke salah satu dari proses-proses tersebut.
Longterm scheduler (job scheduler), menyeleksi proes-proses yang mana yang harus dibawa ke ready queue.
3. Alasan proses harus saling bekerja sama adalah dapat memberi 4 keuntungan yaitu :
Terjadi pembagian informasi
Meningkatkan kecepatan komputasi
Proses dapat dibagi dalam modul-modul.
Memberikan kenyamanan pad aprogrammer.
4. Kode program untuk menyelesaikan permasalahan producer consumer dengan menggunakan shared memori :
# define BUFFER_SIZE 10
Typedef struck {
. . .
} ietm;
Item buffer [BUFFER_SIZE];
int in = 0 ;
int out = 0 ;
Proses producer:
item nextProduced;
while (1) {
while ( ( ( in + 1) # BUFFER_SIZE) == out )
; / * do nothing */
buffer [in] = nextProduced;
in = (in +1) % BUFFER_SIZE}
Proses Consumer :
item nextConsumed;
while (1) {
while ( in == out)
; /* do nothing */
nextConsumed = buffer [out];
out = (out + 1) # BUFFER_SIZE;}
5. Skema komunikasi antar proses menggunakan mailbox.
a. Proses P ingin menunggu 2 pesan satu dari mailbox A dan satu dari mailbox B. Tunjukkan urutan send dan Received yang dieksekusi.
b. Bagaimana urutan send dan received yang dieksekusi P jika P menunggu satu pean dari mailbox A atau mailbox B (salah satu atau keduanya)
6. Yang dimaksud dengan thread adalah suatu unit dasar dari CPU utilization yang berisi program counter,kumpulan register, dan ruang stack,
Struktur Thread : seperti halnya proses thread juga memiliki status ready, blocked, running dan terminate, hanya satu thread yang aktif dalam satu waktu. Thread dapat membuat child thread. Jika satu thread dalam keadaan blocked,maka thread yang lain dapat dijalankan. Namun tidak saling bebas, sebab semnua thread dapat mengakses setiap alamat dalam satu task, thread dapat membaca dan menulisi stack dari thread yang lainnya, sehingga tidak ada proteksi antara satu thread trerhadap thread yang lainnya. Satu proses dapat terdiri dari satu thread ( single thread) dan beberapa thread (multi thread).
7. Keuntungan menggunakan thread pada multiple proses adalah :
menggunakan resource bersama-sama,
respon lebih cepat,
lebih ekonomis dan
meningkatkan utilitas arsitektur mikroprosessor.
8. Perbedaan user – level thread dan kernel – supported thread :
User level thread :
Thread diatur menggunakan pustaka user level thread
Hanya memerlukan sebuah stack dan sebuah program counter, tanpa resource dari kernel.
Kernel tidak dilibatkan dalam penjadwalan, sehingga perpindahan antar user level thread sangat cepat.
Kernel-Supported thread :
Thread yang didukung oleh kernel.
Mempunyai struktur data yang kecil dan sebuah stack.
Perpindahan antar kernel tidak mengubah informasi akses memori sehingga relatif cepat.
LWP berisi proses control block dengan register data, informasi akuntansi dan informasi memori.
Perpindahan antar LWP membutuhkan tambahan pekerjaan dan relatif lambat.
9. Ada 3 model multithreading yaitu :
a. Model Many-to-One : setiap user level thread dipetakkan ke satu kernel thread dan digunakan pada system yang tidak mendukung kernel thread.
b. Model One-to-One : setiap user level thread dipetakan ke kernel thread.
c. Model Many-to-Many : user level thread dipetakan ke beberapa kernel thread.
10. State pada java thread : bahasa pemrograman java menggunakan java thread yang dibuat dengan menggunakan class thread dan mengimplementasikan antar muka yang bersifat runnable (dapat dijalankan). Java thread diatur oleh Java Virtual machine (JVM), java thread terdiri dari satu state new, runnable, blocked data dead.


Tugas Bab III
Nama : Dhesie Dwi Sagita
NPM : 43E57006085018
Kelas : Malam ( Teknik Informatika )

Jumat, 10 Juli 2009

Lat.UAS

<html>
<head>
<title>Struktur Data Linked List</title>
</head>
<body>
<script language = "JavaScript">
<!--

function LinkedList()
{
this._panjang = 0;
this._kepala = null;
}

LinkedList.prototype =
{
constructor: LinkedList,

//Membuat Metode untuk Menambah Data Kedalam List
Tambah: function (data)
{
//Membuat Node List
var node = {data: data, next: null}, NodeTanda;

//Periksa Isi List
if (this._kepala === null)
{
this._kepala = node;
}
else
{
NodeTanda = this._kepala;
while (NodeTanda.next)
{
NodeTanda = NodeTanda.next;
}
NodeTanda.next = node;
}
this._panjang++
},


//Membuat metode Untuk Menunjuk Item Data
Item: function (index)
{
if (index > -1 && index < this._panjang)
{
var NodeTanda = this._kepala,
i = 0;
while (i++ < index)
{
NodeTanda = NodeTanda.next;
}
return NodeTanda.data;
}
else
{
return null;
}
},


//Membuat metode Untuk Membuang Elemen List
Buang: function (index)
{
if (index > -1 && index < this._panjang)
{
var NodeTanda = this._kepala, previous, i = 0;
if (index === 0)
{
this._kepala = NodeTanda.next;
}
else
{
while (i++ < index)
{
previous = NodeTanda;
NodeTanda = NodeTanda.next;
}

previous.next =NodeTanda.next;
}
this._panjang--;
return NodeTanda.data;
}
else
{
return null;
}
},


//Membuat metode Untuk Mengetahui Jumlah Elemen List
Ukuran: function()
{
return this._panjang;
},


//Membuat metode Untuk Membentuk Array
toArray: function()
{
var result = [],
NodeTanda = this._kepala;

while (NodeTanda)
{
result.push (NodeTanda.data);
NodeTanda = NodeTanda.next;
}
return result;
},


//Membuat metode Untuk Konversi ke String
toString: function()
{
return this.toArray().toString();
}

}
var list = new LinkedList ();


list.Tambah("3");
list.Tambah("2");
list.Tambah("1");
list.Tambah("4");


document.write("Isi Linked List <br>");
document.write("--------------- <br>");
for (i=0; i<4; i++)
{
document.write(list.Item(i) + "<br>");
}
document.write("--------------- <br>");

document.write("Isi Linked List Awal = " +list.Ukuran() + "<br>");
document.write ("<br>")


document.write("Isi Linked List to Array =" +list.toArray());
document.write ("<br>")


document.write("Data String Linked List Awal =" +list.toString());



function Urutkan (form)
{
DataKosong = false;
DataInputan = form.Data.value;
inputData = DataInputan.split(",");
for (var i = 0; i < inputData.length; i++)
{
inputData[i] = parseInt (inputData[i], 10);
if (isNaN(inputData[i]))
{
DataKosong = true;
break;
}
}

inputData = bubbleSort(inputData, 0, inputData.length - 1);
if (DataKosong)
{
alert("Silakan Entri Dulu Data, Pisahkan dengan tanda Koma");
form.Data.focus();
}
else
form.Hasil.value = DataString(inputData, 0);
}

function DataString (toArray, Angka)
{
if ((toArray.length - 1) >= Angka)
return (toArray[Angka] + "," + DataString(toArray,(Angka +

1)));
else
return "";
}

function bubbleSort (toArray, Mulai, MulaiBaru)
{
for (var i = MulaiBaru - 1; i >= Mulai; i--)
{
for (var j = Mulai; j <= i; j++)
{
if (toArray[j+1] < toArray[j])
{
var DataTemporer = toArray[j];
toArray[j] = toArray[j+1];
toArray[j+1] = DataTemporer;
}
}
}

return toArray;
}




</script>



<body>
<center>
<form>
Masukan Deretan Angka, Pisahkan dengan Koma :
<hr>
<input type=text name=Data size=30 value= >

<br>
<br>
<input type=button value="Urutkan"

OnClick="Urutkan(this.form)">
<br>
<br>
<br>
Hasil Pengurutan :
<hr>
<input type=text name=Hasil size=30>
</form>
</center>

</body>
</html>
</html>

Rabu, 24 Juni 2009

bubbleSort

<html><head>
<script LANGUAGE="JavaScript">

function Urutkan(form)
{
DataKosong = false;
DataInputan = form.Data.value;
inputData = DataInputan.split(",");
for (var i = 0; i < inputData.length; i++)
{
inputData[i] = parseInt (inputData[i], 10);
if (isNaN(inputData[i]))
{
DataKosong = true;
break;
}
}

inputData = bubbleSort(inputData, 0, inputData.length - 1);
if (DataKosong)
{
aleart("Silakan Entri Dulu Data, Pisahkan dengan tanda Koma");
form.Data.focus();
}
else
form.Hasil.value = DataString(inputData, 0);
}

function DataString(ArrayData, Angka)
{
if ((ArrayData.length - 1) >= Angka)
return (ArrayData[Angka] + "," + DataString(ArrayData,(Angka + 1)));
else
return"";
}

function bubbleSort (ArrayData, Mulai, MulaiBaru)
{
for (var i = MulaiBaru - 1; i >= Mulai; i--)
{
for (var j = Mulai; j <= i; j++)
{
if (ArrayData[j+1] < ArrayData[j])
{
var DataTemporer = ArrayData[j];
ArrayData[j] = ArrayData[j+1];
ArrayData[j+1] = DataTemporer;
}
}
}

return ArrayData;
}
</script>
</head>

<body>
<center>
<form>
Masukan Deretan Angka, Pisahkan dengan Koma :
<hr>
<input type= text name=Data size=30 value="5,6,8,5,12,4,8,4,20">
<br>
<br>
<input type=button value="urutkan" onClick="Urutkan(this.form)">
<br>
<br>
<br>
Hasil Pengurutan :
<hr>
<input type=text name=Hasil size=30>

</form>
</center>

</body>
</html>

Minggu, 21 Juni 2009

Klasifikasi Software

Software adalah program komputer yang merupakan suatu instruksi yang harus diberikan kepada unit pengolah agar komputer dapat menjalankan pekerjaan sesuai dengan yang dikehendaki. Selama ini kita hanya mengenal dua jenis software yaitu software berbayar/ yang biasa disebut dengan proprietary software dan open source software/ software tidak berbayar. Sering kali kita mendengar alasan untuk menggunakan open source software adalah untuk mengurangi angka pembajakan, karena yang diunggulkjan dari open source software adalah gratisnya. Padahal pemahaman tersebut tidak sepenuhnya benar. Tidak semua open source software itu gratis. Secara umum ada banyak jenis-jenis software.
1. Jenis – jenis Software berdasarkan hak ciptanya
a. Free software
Software yang dalam lisensinya mengizinkan siapapun untuk menggunakan, menyalin/menggandakan, dan mendistribusikannya, sesuai aslinya atau sudah dimodifikasi, baik gratis maupun dengan memungut biaya. Dengan syarat utama, source codenya harus tersedia. Contoh freeware : Linux
b. Open Source
Open source software sering rancu dengan free software, padahal ada sejumlah syarat yang harus dipenuhibial dianggap sebagai open source, yaitu bebas didistribusikan tanpa adanya peersyaratan royalty, program harus memiliki source code, licensi harus dapat dimodifikasi dan diturunkan, integrity dari pembuat source code. Contoh : Mozilla
c. Public Domain software
Software yang tidak dilindungi hak ciptanya atau gratis. Software jenis ini tidak terikat secara hukumyang terkait dengan hak cipta. Versi penuh, source code tersedia secara bebas untuk dimodifikasi, dan didistribusikan ulang dengan lisensi apapun. Contoh : STP MP3 Player
d. Copyleft software
Software bebas yang ketentuan pendistribusiannya tidak mengijinkan untuk menambah batasan-batasan tanbahan jika melakukan distribusi dan modifikasi. Jadi setiap salinan dari software atau modifikasi tetap merupakan free software. Contoh : GNU GPL
e. Non-Copyleft free software
Kebalikan dari copyleft software yaitu free software yang mengizinkan distribusi ulang atau modifikasi dengan menambahkan batasan baru, sehingga setiap kopi software ini, dalam bentuk binary ataupun termodifikasi bisa menjadi proprietary software. Contoh : X Window System
f. GPL software
GNU GPL (General Public Licence) adalah lisensi yang mendefinisikan copylefted software
g. Freeware
Adalah software yang bebas untuk digunakan, didistribusikan, tetapi bukan untuk dimodifikasi. Source code tidak ada. Contoh : Internet Explorer,
Netscape Communicator
h. Semi-Free Software
Adalah software yang tidak bebas, tetapi mengijinkan semua pihak untuk menggunakan, menyalin, mendistribusikan dan memodifikasi untuk tujuan nirlaba / non-profit. Contoh : PGP
i. Shareware
Adalah software yang bebas didistribusikan dengan jangka waktu tertentu. Untuk pemakaian selanjutnya pengguna dikenai biaya lisensi. Shareware pada umumnya closed-source. Contoh : Winzip, mIRC
j. Trial Software
Adalah jenis lisensi yang biasa ditemui pada software untuk keperluan demo dari sebuah software sebelum diluncurkan ke masyarakat atau biasanya sudah diluncurkan tetapi memiliki batas masa aktif. Lisensi ini mengizinkan pengguna untuk menggunakan, menyalin atau menggandakan software tersebut secara bebas. Namun karena bersifat demo, seringkali software dengan lisensi ini tidak memiliki fungsi dan fasilitas selengkap versi komersialnya. Dan biasanya dibatasi oleh masa aktif tertentu. Contoh : MacromediaDreamWeaver, NortonUtilities
k. Commercial Software
Adalah software yang diekmbangkan untuk memperoleh keuntungan dari penggunanya. Software ini dilindungi hak ciptanya oleh badan hukum.
l. Proprietary Software
Software komersial yang bersifat closed source. Contoh : MS Windows, MS Office
2. Jenis – jenis Software berdasarkan Operating System
Sistem operasi / operating system merupakan pernagkat lunak yang sangat kompleks. Karena sistem operasi secara umum adalah pengelola seluruh sumber daya yang terdapat pada sistem komputer dan menyediakan sekumpulan layanan (system calls) ke pemakai sehingga memudahkan dalam penggunaan dan pemanfaatan sumber daya sistem komputer. Jenis jenis sistem operasi :
a. UNIX
Unix adalah sebuah sistem operasi komputer yang dikembangkan oleh AT&T Bell Labs pada tahun 1960 dan 1970-an. UNIX didesain sebagai sistem operasi yang portable, multi-tasking dan multi-user. Di Indonesia Unix digunakan sebagai Server aplikasi, produk yang beredar di pasaran antara lain IBM AIX, HP UX, Sun Solaris
b. Microsoft Windows
Microsoft Windows atau lebih dikenal dengan sebutan Windows adalah keluarga sistem operasi komputer pribadi yang dikembangkan oleh Microsoft yang menggunakan antarmuka dengan pengguna berbasis grafik (graphical user interface). Sistem operasi Windows telah berevolusi dari MS-DOS, sebuah sistem operasi yang berbasis modus teks dan command-line.

c. LINUX
Linux merupakan salah satu contoh hasil pengembangan perangkat lunak bebas dan sumber terbuka utama. Seperti perangkat lunak bebas dan sumber terbuka lainnya pada umumnya, kode sumber Linux dapat dimodifikasi, digunakan dan didistribusikan kembali secara bebas oleh siapapun.

3. Jenis – jenis Software berdasarkan Aplikasinya
Program aplikasi merupakan perangkat lunak siap pakai yang nantinya akan digunakan untuk membantu melaksanakan pekerjaan penggunanya. Aplikasi ini disiapkan sesuai kebutuhan.
a. Aplikasi Perkantoran / office
Pengolah Dokumen (Word Processing)
Digunakan untuk mengolah dokumen text. Contoh :
• Microsoft word, bersifat komersil, diproduksi oleh Microsoft Corporation.
• Open Office Writer, bersifat open source diproduksi oleh open office.org.
• Staroffice Writer, bersifat komersil, diproduksi oleh Sun Microsystems, Inc.
• AppleWorks Word Processing, bersifat komersial untuk komputer Apple Macintosh.
• Word Perfect, bersifat komersial diproduksi oleh Corel Corporation.
• Lotus Word Pro, bersifat komersial, diproduksi oleh IBM Lotus Software.
Spreadsheet
Digunakan untuk pengolahan data matematis. Contohnya :
• Microsoft Excell, bersifat komersial, diproduksi Microsoft Corporation.
• Open Office Calc, bersifat open source oleh OpenOffice.org.
• Staroffice Calc, bersifat komersial, diproduksi oleh Sun Microsystems, Inc.
• AppleWorks Spreadsheet, bersifat komersial untuk komputer Apple Macintosh.
• Quattro Pro, bersifat komersial dan diproduksi oleh Corel Corporation.
• Lotus 1-2-3, bersifat komersial dan diproduksi oleh IBM Lotus Software.

Presentasi
Digunakan untuk melakukan presentasi baik dalam bentuk grafik, maupun text. Contoh :
• Microsoft Powerpoint, bersifat komersial, diproduksi Microsoft Corp.
• Open Office Impress, bersifat open source oleh OpenOffice.org.
• Staroffice Impress, bersifat komersial, diproduksi oleh Sun Microsystems, Inc.
• AppleWorks Presentation, bersifat komersial untuk komputer Apple Macintosh.
• Corel Presentation, bersifat komersial, diproduksi oleh Corel Corporation.
• Lotus Freelance Graphics, bersifat komersial dan diproduksi oleh IBM Lotus Software.

Basis Data
Digunakan untuk melakukan penyimpanan berbagai macam tipe data agar dapat diolah kembali dengan mudah. Contoh :
• Microsoft Access, bersifat komersial dan diproduksi oleh Microsoft Corp.
• MySQL, bersifat opensource dan diproduksi oleh Microsoft Corp.
• Sybase, bersifat komersial dan diproduksi oleh Sybase Inc.
• Oracle, bersifat komersial dan diproduksi oleh Microsoft Corp.
• Microsoft SQL Server, bersifat komersial dan diproduksi oleh Microsoft Corp.
• PostgreSQL, bersifat komersial dan diproduksi oleh Microsoft Corp.
Document Management System
Digunakan untuk menelusuri dan menyimpan data atau image dari dokumen kertas. Contoh :
• Microsoft Document Imaging, bersifat komersial dan diproduksi oleh Microsoft Corp.
• doQuments, bersifat komersial dan diproduksi oleh Itaz Corp.
• DocMoto, bersifat komersial dan diproduksi oleh CHL Software.
• infoRouter, bersifat komersial dan diproduksi oleh Active Innovations, Inc.
Text Editor
Digunakan untuk menyunting plain text. Text editor tidak melakukan pengelolaan terhadap format dokumen, seperti font, warna, index, dll. Contoh :
• Notepad, bersifat komersial dan masuk dalam paket sistem operasi Microsoft Windows.
• Editplus, bersifat komersial dan diproduksi oleh ES Computing.
• Ultraedit, bersifat komersial dan diproduksi oleh IDM Computer Solutions.
• Jedit, bersifat open source dan dibawah lisensi GNU General Public License.
• Vi, merupakan text editor dengan tampilan text base pada sistem operasi linux. Bersifat opensource dan dibawah lisensi GNU General Public License.
b. Aplikasi Penggunaan Rumah
Perangkat lunak penggunaan rumah adalah perangkat lunak yang digunakan untuk hiburan, referensi, dan pendidikan di rumah. Perangkat lunak jenis ini paling banyak digunakan untuk penggunaan pribadi. Jenis-jenis dari perangkat lunak ini adalah :

Game
Digunakan untuk hiburan. Contoh :
• Minesweeper, game standart dari paket Microsoft Windows.
• FIFA 2005, games komersial yang diproduksi oleh EA Sports.
• Championship Manager 2005, bersifat komersial yang diproduksi oleh Sport Interactive.
• Counter Strike, jenis game RPG yang bersifat komersil dan multiplayer.
Referensi
Digunakan untuk mencari referensi atau informasi tentang segala hal. Perangkat lunak ini bekerja seperti ensiklopedia, hanya saja dalam bentuk digital dan lebih interaktif. Contoh :
• Britannica Ultimate Reference Suite, bersifat komersil, diproduksi oleh Ensyclopedia Britannica.
• Microsoft Encarta, bersifat komersil, diproduksi oleh Microsoft Corp.
• Wikipedia, bersifat open source diproduksi oleh Wikipedia Foundation.
• World Book Encyclopedia, bersifat komersial dan diproduksi oleh World Book Inc.
Pendidikan
Digunakan untuk proses pengajaran dan pendidikan terutama untuk proses belajar mandiri. Berbagai jenis perangkat lunak yang mendukung proses pengajaran dan referensi memiliki beberapa macam, yaitu seperti proses pembelajaran, e-learning, kuis, dll. Contoh :
• Blackboard Academic suite, bersifat komersil , diproduksi oleh Blackboard Inc.
• The Geometer’s Sketchpad, bersifat komersial dan diproduksi oleh KCP Technologies.
• Quiz-Buddy, bersifat komersial dan diproduksi oleh Sierra Vista Software.
• Kidspiration, bersifat komersial dan diproduksi oleh Inspiration Software, Inc.

c. Aplikasi Bisnis
Adalah perangkat lunak yang digunakan untuk membantu proses bisnis dalam meningkatkan produktivitasnya. Contoh dari softwraenya adalah :
Akuntansi
Digunakan untuk merekam dan memproses setiap proses akuntansi. Proses akuntansi dapat dibagi menjadi beberapa modul fungsional, seperti account payable, account receivable, payroll, general ledger, dll. Contoh :
• MYOB, bersifat komersial dan diproduksi oleh MYOB Inc.
• Peachtree, bersifat komersial dan diproduksi oleh Sage Software SB Inc.
• GNU Cash, bersifat open source dan dikembangkan oleh GNU Cash Development Team.
• Microsoft Money, bersifat komersial dan diproduksi oleh Microsoft.
• Quickbooks, bersifat komersial dan diproduksi oleh Intuit Inc.
• SAP, bersifat komersial dan diproduksi oleh SAP Inc.

Customer Relationship Management (CRM).
Adalah suatu konsep atau prosedur yang memungkinkan sebuah organisasi atau perusahaan dapat meningkatkan pelayanan terhadap pada customer dan pelanggannya. Dengan CRM perusahaan dapat terus mengenalkan setiap proses dan prosedur yang terpercaya agar dapat berinteraksi dengan para pelanggannya. Contoh :
• Centraview, bersifat open source dan diproduksi oleh CentraView Inc dengan lisensi Mozilla Public License.
• Microsoft CRM, bersifat komersial dan diproduksi oleh Microsoft Corporation.
• Siebel CRM, bersifat komersial dan diproduksi oleh Siebel Systems, Inc.
• SAS Customer Intelligence, bersifat komersial dan diproduksi oleh SAS Institute Inc.
• Sage CRM Solutions, bersifat komersial dan diproduksi oleh Sage Software, Inc.
d. Aplikasi Graphis
Bersifat Komersial
• Adobe photoshop
• Corel draw, Adobe Ilustration
• Auto cad
• ACD See
• Movie Maker
Bersifat Open Source
• GIMP
• Inkscape
• Blender
• BRL Cad
• F-Spot
• Kino
e. Aplikasi Multimedia
Bersifat Komersial
• Winamp, Apple iTunes
• Windows Media Player
• Adobe Soundbooth
Bersifat Open Source
• Amarok, Songbird
• VLC Media Player
• Audacity, Ardour
f. Aplikasi Internet
Bersifat Komersial
• Internet Explorer
• Microsoft Outlook
• Total Commander
• MSN Messenger, YM, ICQ, ..
• mIRC
Bersifat Open Source
• Mozilla Firefox
• Evolution, Mozilla Thunderbird
• gFTP
• Pidgin
• XChat, Pidgin
• Aplikasi Internet
g. Aplikasi Anti Virus
Bersifat Komersial
• Norton
• Avast
• Kasperkey
• - AVG
Bersifat Open Source
• Panda Platinum
• NOD 32
• Mcafee
 Avira Anti virus
4. Jenis – jenis Software Utility
sistem operasi merupakan perangkat lunak sistem dengan fungsi tertentu, misalnya pemeriksaan perangkat keras (hardware troubleshooting), memeriksa disket yang rusak (bukan rusak fisik), mengatur ulang isi harddisk (partisi, defrag), contoh Utilty adalah :
a. Norton Utility
b. QuickDos
c. Defragmenter
d. Format disket, periksa system
e. Transtool.


Sebagai Tugas UAS
Dikirm oleh : Dhesie Dwi Sagita
NPM : 43E57006085018
Jurusan : Tehnik Informatika/ TK 1 Smt 2
Kelas : Malam

Sumber Infromasi ini dari : http://www.geocities.com/imamindrap/articles/software.html
http://id.wikipedia.org/wiki
tentunya juga dari search google

Rabu, 17 Juni 2009

Graph

<html>
<head><title>Dijkstra Algorithms </title>

</head>
<body>
<script language = "javascript">

var NilaiAcuan = 10000;
var TakTerdefinisi = -1;
var NamaVerteks = new Array('A','B','C','D','E','F');
var Matriks = new Array(6);

function Bobot(a,b)
{
return Matriks[a][b];
}

function Dijkstra(JumlahVerteks,Awal,d)
{
var Posisi = new Array(JumlahVerteks);
var i;
var Kunjungan = new Array(JumlahVerteks);
var pred = new Array(JumlahVerteks);

for(i=0; i<JumlahVerteks; i++)
{
Posisi[i] = NilaiAcuan;
pred[i] = TakTerdefinisi;
Kunjungan[i] = false;
}
Posisi[Awal] = 0;

var Verteks;
for (Verteks = 0; Verteks < JumlahVerteks; Verteks++)
{
var JarakTerpendek = NilaiAcuan, closest = -1;
for (i=0; i < JumlahVerteks; i++)
{
if (!Kunjungan[i])
{
if (Posisi[i] <= JarakTerpendek)
{
JarakTerpendek = Posisi[i]; closest = i;
}
}
}

Kunjungan[closest] = true

for (i=0; i < JumlahVerteks; i++)
{
if (!Kunjungan[i])
{
var w = Bobot(closest, i);
if (Posisi[closest]+w < Posisi[i])
{
Posisi[i] = Posisi[closest] + w;
pred[i] = closest;
}
}
}
}


i=d
if (Posisi[i] < NilaiAcuan)
{
var Lintasan = NamaVerteks[i];
var Verteks = i;
while (Verteks>0)
{
Verteks = pred[Verteks];
if (Verteks>=0) Lintasan = NamaVerteks[Verteks] + '->' + Lintasan;
}
alert("Jarak :" + Posisi[i]+' ('+Lintasan+')'+'<br>');
} else
{
alert("Tidak ada Jalur");
}
}


var x = '~';
;
document.write(Matriks[0]=new Array(0,2,3,x,x,x));
document.write('<br>');
document.write(Matriks[1]=new Array(2,0,3,6,x,x));
document.write('<br>');
document.write(Matriks[2]=new Array(3,3,0,3,5,x));
document.write('<br>');
document.write(Matriks[3]=new Array(x,6,3,0,1,3));
document.write('<br>');
document.write(Matriks[4]=new Array(x,x,5,1,0,1));
document.write('<br>');
document.write(Matriks[5]=new Array(x,x,x,3,1,0));
document.write('<br>');


document.write('<pre>A-2-B-6--D--3-F <br>');
document.write('\\ | /| / <br>');
document.write(' 3 3 3 1 1 <br>');
document.write(' \\ | / | / <br>');
document.write(' \\|/ |/ <br>');
document.write(' C--5-E <br> ');

var Dari=0; // A
var Ke =5; // F
Dijkstra(Matriks.length,Dari,Ke);
//-->

</script>

</body>
</htmL>

Minggu, 14 Juni 2009

Double Linked List

?html>
?head>
?title>Struktur Data Double Linked List?/title>
?/head>

?body>
?script language = "JavaScript">
?!--
function DoublyLinkedList()
{
this._Kepala = null;
this._Ekor = null;
this._Panjang = 0;
}

DoublyLinkedList.prototype =
{
constructor: DoublyLinkedList,
Tambah: function (data)
{
var node = {data: data, next: null, prev: null};

if (this._Panjang == 0)
{
this._Kepala = node;
this._Ekor = node;
}
else
{
this._Ekor.next = node;
node.prev = this._Ekor;
this._Ekor = node;
}
this._Panjang++;

},

ItemList: function(index)
{
if (index > -1 && index ? this._Panjang)
{
var NodeTanda = this._Kepala,
i = 0;

while(i++ ? index)
{
NodeTanda = NodeTanda.next;
}

return NodeTanda.data;
}
else
{
return null;
}
},

Buang: function(index){

if (index > -1 && index ? this._Panjang)
{
var NodeTanda = this._Kepala, i = 0;

if (index === 0)
{
this._Kepala = NodeTanda.next;
if (!this._Kepala)
{
this._Ekor = null;
}
else
{
this._Kepala.prev = null;
}

}
else
if (index === this._Panjang -1)
{
NodeTanda = this._Ekor;
this._Ekor = NodeTanda.prev;
this._Ekor.next = null;
}
else
{
while(i++ ? index)
{
NodeTanda = NodeTanda.next;
}
NodeTanda.prev.next = NodeTanda.next;
}
this._Panjang--;
return NodeTanda.data;

}
else
{
return null;
}


},

Ukuran: function(){
return this._Panjang;
},

toArray: function(){
var result = [],
NodeTanda = this._Kepala;

while(NodeTanda){
result.push(NodeTanda.data);
NodeTanda = NodeTanda.next;
}

return result;
},

toString: function(){
return this.toArray().toString();
}
}

var List = new DoublyLinkedList();


List.Tambah("Teknik Informatika");
List.Tambah("Teknik Komputer");
List.Tambah("Komputerisasi Akuntansi");
List.Tambah("Computer Networking");


document.write("Isi LinkedList ?br>");
document.write("--------------- ?br>");
for (i=0; i?4; i++)
{
document.write(List.ItemList(i) + "?br>") ;
}
document.write("--------------- ?br>");


alert("Isi LinkedList Awal =" + List.ItemList(0));
alert("ItemList 1 pada Linked List diBuang, yaitu = " +List.ItemList(1));
List.Buang(1);



document.write("?br>Isi LinkedList Terakhir ?br>");
document.write("--------------- ?br>");
for (i=0; i?4; i++)
{
document.write(List.ItemList(i) + "?br>") ;
}
document.write("--------------- ?br>");

//-->
?/script>
?/body>
?/html>


Hasil Double Linked List

Isi LinkedList
---------------
Teknik Informatika
Teknik Komputer
Komputerisasi Akuntansi
Computer Networking
---------------

Isi LinkedList Terakhir
---------------
Teknik Informatika
Komputerisasi Akuntansi
Computer Networking
null
---------------

Linked List

?html>
?head>
?title>Struktur Data Linked List ?/title>?/head>
?body>
?script language = "JavaScript">
?!--
function LinkedList()
{
this._panjang = 0;
this._kepala = null;
}
LinkedList.prototype =
{
construktor : LinkedList,
//Membuat Metode Untuk Menambah Data kedalam List
Tambah : function (data)
{
//Membuat Node List
var node = {data:data,next: null },NodeTanda;
//Periksa Isi List
if (this._kepala===null)
{
this._kepala = node;
}
else
{
NodeTanda = this._kepala;
while (NodeTanda.next)
{
NodeTanda = NodeTanda.next;
}
NodeTanda.next = node;
}
this._panjang++;
},
//Membuat Metode Untuk Menunjuk Item Data
Item : function (index)
{
if (index > -1 && index ?this._panjang)
{
var NodeTanda = this._kepala,
i = 0;
while (i ++ ? index)
{
NodeTanda = NodeTanda.next;
}
return NodeTanda.data;
}
else
{
return null;
}

},
//Membuat Metode Untuk Membuang Elemen List
Buang : function (index)
{
if (index > -1 && index ? this._panjang)
{
var NodeTanda = this._kepala,previous,i = 0;
if (index === 0 )
{
this._kepala = NodeTanda.next;
}
else
{
while (i++ ? index)
{
previous = NodeTanda;
NodeTanda = NodeTanda.next;
}
previous.next = NodeTanda.next;
}
this._panjang--;
return NodeTanda.data;
}
else
{
return null;
}
},
//Membuat Metode Untuk Mengetahui Jumlah Elemen List
Ukuran :function()
{
return this._panjang;
},
//Membuat Metode Untuk Membentuk Array
toArray : function()
{
var result = [],
NodeTanda = this._kepala;
while(NodeTanda){
result.push (NodeTanda.data);
NodeTanda = NodeTanda.next;
}
return result;
},
//Membuat Metode Untuk Konversi ke String
toString : function()
{
return this.toArray().toString();
}
};
//Lanjutan
var list = new LinkedList();

list.Tambah("Teknik Informatika");
list.Tambah("Teknik Komputer");
list.Tambah("Komputerisasi Akuntansi");
list.Tambah("Computer Networking");

document.write ("Isi LinkedList ?br>") ;
document.write("----------------?br>");
for(i=0; i?4; i++)
{
document.write(list.Item(i) + "?br>");
}
document.write("----------------?br>");

alert("Isi LinkedList Awal="+ list.Item(0));
alert("Item 1 pada Linked list dibuang,yaitu =" +list.Item(1));
list.Buang(1);


document.write("Isi LinkedList Terakhir ?br>");
document.write("------------------------?br>");
for(i=0;i?4;i++)
{
document.write(list.Item(i) + "?br>");
}
document.write("--------------------?br>");

//-->
?/script>
?/body>
?/html>

Hasil Linked List

Isi LinkedList
----------------
Teknik Informatika
Teknik Komputer
Komputerisasi Akuntansi
Computer Networking
----------------
Isi LinkedList Terakhir
------------------------
Teknik Informatika
Komputerisasi Akuntansi
Computer Networking
null
--------------------

Minggu, 17 Mei 2009

First Queue

?html>
?head>
?title>Program Queue dengan shift dan unshift javascript?/title>
?script language = "javascript">
function DataQueue()
{
var queue = [];
queue.unshift(1);
queue.unshift(2);
var i = queue.pop();
document.write(i + "?br/>");
queue.unshift(3);
queue.unshift(4);
var i = queue.pop();
document.write(i + "?br/>");
}
?/script>
?/head>
?body>
?form name="FormStrukturData">
?input name="btnQueue" value="Queue" type="button" onClick="DataQueue();"/>
?/form>
?/body>
?/html>

Queue_2

?html>
?head>
?title>Struktur Data Queue?/title>
?script language = "javascript">
var queue=[];
function Masuk_Antrian(data)
{
queue.unshift(data);
}
function Keluar_Antrian()
{
var yang_keluar_antrian= queue.pop();
if(queue.length == 0)
return "Antrian sudah Kosong";
else
return yang_keluar_antrian;
}
function Dalam_Antrian(list)
{
list.options.length=0;
for (var i = 0; i? queue.length;i++)
{
var data = new Option(queue[i]);
list.options[list.options.length] = data;
}
}
?/script>
?/head>
?body>
?form>
?input type=text name=textSimpan>
?input type=button value="Masuk Antrian"
onClick='Masuk_Antrian(textSimpan.value);
textSimpan.value="";
Dalam_Antrian(Visualisasi);'>
?select name="Visualisasi" size = 12>
?option>Isi Antrian....
?/select>
?input type = text name=textAmbil size=20>
?input type= button value="Keluar Antrian"
onClick='textAmbil.value=Keluar_Antrian();
Dalam_Antrian(Visualisasi);'>
?/form>
?/body>
?/html>

Minggu, 19 April 2009

Stack_2

?html>
?head>
?title>Struktur Data Stack?/title>
?script language = "JavaScript">
var stack = new Array();
function Input_ke_Stack(data)
{
stack.push(data);
}
function Ambil_dari_Stack()
{
var data_dari_stack = stack.pop();
if(data_dari_stack == undefined)
return "Stack Sudah Kosong";
else
return data_dari_stack;
}
function TampilkanStack(list)
{
list.options.length = 0;
for (var i = 0; i ? stack.length; i++)
{
var data = new Option(stack[i]);
list.options[list.options.length] = data;

}
}
?/script>
?/head>
?body>
?form>
?input type = text name=textSimpan>
?input type = button value="Masukkan Ke Stack"
onClick='Input_ke_Stack(textSimpan.value);
textSimpan.value="";
TampilkanStack(medialist);'>
?select name="medialist" size=12>
?option>Tampilan data....
?/select>
?input type=text name=textAmbil size=20>
?input type=button value="Ambil dari Stack"
onClick="textAmbil.value = Ambil_dari_Stack();
TampilkanStack(mediaList);">
?/form>
?/body>
?/html>

Rabu, 15 April 2009

Stack1

?html>
?head>
?title>Contoh Implementasi Push dan POP pada Stack?/title>
?/head>
?body>
?script type="text/javascript">
var stack = new Array;
stack.push("A");
stack.push("B");
stack.push("C");
document.write("stack:"+stack.toString()+"?br>");

var Yangdiambil = stack.pop();
document.write("Data Yang Diambil : "+Yangdiambil);
document.write("?br>");
document.write("Isi Stack Terakhir:"+stack.toString());
?/script>
?/body>
?/html>

Minggu, 12 April 2009

Array

<html>
<head>
<title>Parameter Array</title>
</head>
<body>
<SCRIPT LANGUAGE = "JavaScript">
<!--
var tempat = [];
var data = prompt("Ketik Jumlah Maksimum Array :");
for (m=1; m<=data; m++)
{
var bil = prompt("Masukkan Bilangan : ");
tempat[m]=bil;
}
for (n=1; n<=data; n++)
{
document.write("Elemen Array ("+n+") = " +tempat[n] + "<br>");
}
//-->
</SCRIPT>
</body>
</html>

Menghitung Deret Fibonacci
<html>
<head>
<title>Deret Fibonacci</title>
</head>
<script>
<!--
function fibonacci(n)
{
var i ;
var array_fib = new Array();
array_fib.push(0);
array_fib.push(1);

for (i=0; i<=n; i++)
{
array_fib.push(array_fib[0] + array_fib[1]);
array_fib.shift();
}
return array_fib[0];
}
for(i=0; i<=20; i++)
{
document.write("Fibonacci(" +i+ ") = " +fibonacci(i) + "<br>");
}
//-->
</script>
</head>
<body>
</body>
</html>

Fungsi Matematika

?html>
?head>
?title>Membuat fungsi Matematika dengan JavaScript?/title>
?/head>
?body>
?SCRIPT LANGUAGE = "JavaScript">
?!--
function jumlah(x,y)
{
var hasil = x+y;
return(hasil);
}
var a = parseInt(prompt("Ketikan Bilangan A = \n Ingat Jangan String"));
var b = parseInt(prompt("Ketikan Bilangan B = \n Ingat Jangan String"));
var z = jumlah(a,b);
document.write(z);
document.write("?BR>");
document.write("?hr>");
document.write("Type Data nya adalah = " +typeof(z));
//-->
?/SCRIPT>
?/BODY>
?/html>

Record 1table

?html>
?head>
?title>Membuat Rekaman Objek?/title>
?/head>
?body>
?SCRIPT LANGUAGE = "JavaScript">
?!--
var Record = new Array ();
function Mahasiswa (npm, nama, prodi, jenjang)
{
// Properti
this.npm = npm;
this.nama = nama;
this.prodi = prodi;
this.jenjang = jenjang;
// Metode
this.LihatRecordMahasiswa = LihatRecordMahasiswa;
}
function LihatRecordMahasiswa ()
{
document.write("?td>" + this.npm + "?/td>");
document.write("?td>" + this.nama + "?/td>");
document.write("?td>" + this.prodi + "?/td>");
document.write("?td>" + this.jenjang + "?/td>");
}
//mengisi data
Record[0] = new Mahasiswa("43E001", "Dani", "TI", "S1");
Record[1] = new Mahasiswa("43E001", "Doni", "TI", "S1");
Record[2] = new Mahasiswa("43E001", "Dina", "TI", "S1");
Record[3] = new Mahasiswa("43E001", "Dini", "TI", "S1");
//menampilkan data
document.write("?table border = '1'>");
document.write("?th>NPM?/th>?th>Nama?/th>");
document.write("?th>Prodi?/th>?th>Jenjang?/th>?br>");
for (i=0; i ?Record.length; i++)
{
document.write("?tr>");
Record[i].LihatRecordMahasiswa();
document.write("?/tr>");
}


//-->
?/SCRIPT>
?/body>
?/html>

Sabtu, 11 April 2009

Belajar Struktur Data with Javascript

?html>
?title>Type Bilangan?/title>
?/head>
?body>
?SCRIPT LANGUAGE = "JavaScript">
?!--
var a = 15;
b = 14;
tambah = a+b;
kali = a*b;
document.write("Penambahan(" +a+ "+" +b+ ") = "+ tambah);
document.write("?BR>");
document.write("Perkalian (" +a+ "x" +b+ ") = "+ kali);
document.write("?BR>");
//-->
?/SCRIPT>
?/body>
?/html>

Program Konversi Antar Sistem Bilangan

?html>
?head>
?title>Konversi Antar Sistem Bilangan?/title>
?/head>
?body>
?SCRIPT LANGUAGE = "JavaScript">
?!--
var bil = new Number(25);
document.write("Bilangan Desimal : " +bil + "?BR>");
document.write("?HR>");
document.write("Biner : " + bil.toString(2) + "?BR>");
document.write("Oktal : " + bil.toString(8) + "?BR>");
document.write("Heksa : " + bil.toString(16) + "?BR>");
//-->
?/SCRIPT>
?/BODY>
?/HTML>

Rabu, 01 April 2009

Record dengan 2 tabel

#html>
#head>#title>Membuat Rekaman Objek#/title>#/head>
#body>
#script language = "JavaScript">;
#!--
var Record = new Array ();
function Mahasiswa (npm, nama, prodi, jenjang){
//Properti
this.npm = npm;
this.nama = nama;
this.prodi = prodi;
this.jenjang = jenjang;

// Metode
this.LihatRecordMahasiswa = LihatRecordMahasiswa;
}
function LihatRecordMahasiswa() {
document.write("#td>" + this.npm +"#/td>");
document.write("#td>" + this.nama +"#/td>");
document.write("#td>" + this.prodi +"#/td>");
document.write("#td>" + this.jenjang +"#/td>");
}
//mengisi data
Record[0]= new Mahasiswa ("43E001", "Dani", "TI", "SI");
Record[1]= new Mahasiswa ("43E001", "Doni", "TI", "SI");
Record[2]= new Mahasiswa ("43E001", "Dina", "TI", "SI");
Record[3]= new Mahasiswa ("43E001", "Dini", "TI", "SI");

//menampilkan data
document.write ("#table border='1'>");
document.write ("#th>NPM#/th> #th>Nama#/th>");
document.write ("#th>Prodi#/th>#th>Jenjang#/th> #br>");

for (i=0; i #Record.length; i++)
{
document.write("#tr>");
Record[i].LihatRecordMahasiswa();
document.write("#/tr>");
}
document.write("#/table> #br>");

document.write("#table border = '1'>");
document.write("#th>NPM#/th> #th>Nama#/th>");
document.write("#th>Prodi#/th> #th>Jenjang#/th> #br>");

for (i=0;i #Record.length; i++)
{
document.write("#tr>");
Record[i].npm
document.write("#/tr>");
}
document.write("#/table>");
//-->

#/script>
#/body>
#/html>

Rabu, 25 Maret 2009

Belajar Array

?HTML>
?HEAD>
?TITLE>Belajar Array?/TITLE>
?/HEAD>
?BODY>
?SCRIPT LANGUAGE = "JavaScript">
?!--
var DATA_KU = new Array("Saya","Sedang","Senang");
for (i=0; i?3; i++)
{
document.write(DATA_KU[i]+"?br>");
}
alert ("Selamat Belajar Struktur Data");
alert ("Semoga Memperoleh Ilmu yang bermanfaat");
//-->
?/SCRIPT>
?/BODY>
?/HTML>

Selasa, 03 Februari 2009

Peran Ilmu Fisika dalam bidang IT

Abstrak
Dalam bidang Fisika kita mempelajari tentang sinyal, gelombang dan juga amplitudo. Sinyal, gelombang dan juga amplitude sangant berkaitan erat dalam bidang audio manupun audio visual, seperti contoh radio dan televisi. Cara memancarkan (mentransmisikan) sinyal gambar yang amplitudonya termodulasi mirip dengan system penyiaran radio yang telah dikenal. Dalam kedua kasus, amplitude sebuah gelombang pembawa frekuensi radi (RF) dibuat bervariasi terhadap tegangan pemodulasi. Modulasinya adalah sinyal bidang frekuensi dasar (base band). Pada televisi, sinyal baseband ini merupakan sinya video komposit. Penyiaran televise benar-benar seperti suatu system radio, tetapi mencakup gambar dan suara. Sinyal suara yang tergabung di dalamnya dipancarkan oleh modulasi frekuen (FM) pada suatu gelombang pembawa terpisah dalam saluran pemancaran yang sama seperti sinyal gambar.
Pengertian sinyal gambar digunakan disini untuk mengartikan gelombang pembawa yang termodulasi. Sinyal video adalah sinyal untuk sebuah tabung gambar. Sinyal video untuk televisi bersesuaian dengan sinyal audio untuk system suara. Rincian yang lebih jelas dari sinyal gambar AM (Amplitude Modulated) dan sinyal suara FM yang berhubungan dijelaskan pada bab-bab berikut.

BAB I
PENDAHULUAN

Stasiun TV penyiaran memanfaatkan sistem teknologi penyiaran dengan teknologi digital khususnya pada sistem perangkat studio untuk memproduksi program, mengedit, merekam dan menyimpan data. Pengiriman sinyal gambar, suara dan data menggunakan sistem transmisi digital dengan menggunakan satelit yang dimanfaatkan sebagai siaran TV-Berlangganan.
Sistem penyiaran TV Digital adalah penggunaan aplikasi teknologi digital pada sistem penyiaran TV yang dikembangkan di pertengahan tahun 90 an dan diujicobakan pada tahun 2000. Pada awal pengoperasian sistem digital ini, umumnya dilakukan siaran TV secara bersama dengan siaran analog sebagai masa transisi. Sekaligus ujicoba sistem tersebut sampai mendapatkan hasil penerapan siaran TV Digital yang paling ekonomis sesuai dengan kebutuhan dari negara yang mengoperasikan.
Secara teknik pita spektrum frekuensi radio yang digunakan untuk televisi analog dapat digunakan untuk penyiaran televisi digital. Lebar pita frekuensi yang digunakan untuk analog dan digital berbanding 1 : 6 artinya bila pada teknologi analog memerlukan pita selebar 8 MHz untuk satu kanal transmisi, maka pada teknologi digital dengan lebar pita frekuensi yang sama dengan teknik multiplek dapat digunakan untuk memancarkan sebanyak 6 hingga 8 kanal transmisi sekaligus dengan program yang berbeda. Selain ditunjang oleh teknologi penerima yang mampu beradaptasi dengan lingkungan yang berubah, TV digital ditunjang oleh sejumlah pemancar yang membentuk jaringan berfrekuensi sama sehingga daerah cakupan dapat diperluas. Produksi peralatan pengolah gambar yang baru adalah dengan menggunakan format digital.
Teknologi digital efisien dalam pemanfaatan spektrum. Satu penyelenggara televisi digital meminta spektrum dalam jumlah yang cukup besar. Artinya tidak hanya 1 (satu) kanal pembawa melainkan lebih. Penyelenggara berfungsi sebagai operator penyelenggara jaringan yaitu untuk mentransfer program dari stasiun televisi lain yang ada di dunia menjadi satu paket layanan sebagaimana penyelenggaraan televisi kabel berlangganan yang ada saat ini.

BAB II
TRANSMISI TELEVISI


Cara memancarkan (mentransmisikan) sinyal gambar yang amplitudonya termodulasi mirip dengan system penyiaran radio yang telah dikenal. Dalam kedua kasus, amplitude sebuah gelombang pembawa frekuensi radi (RF) dibuat bervariasi terhadap tegangan pemodulasi. Modulasinya adalah sinyal bidang frekuensi dasar (base band). Pada televisi, sinyal baseband ini merupakan sinya video komposit. Penyiaran televise benar-benar seperti suatu system radio, tetapi mencakup gambar dan suara. Sinyal suara yang tergabung di dalamnya dipancarkan oleh modulasi frekuen (FM) pada suatu gelombang pembawa terpisah dalam saluran pemancaran yang sama seperti sinyal gambar.
Pengertian sinyal gambar disini digunakan untuk mengartikan gelombang pembawa yang termodulasi. Sinyal video adalah sinyal untuk sebuah tabung gambar. Sinyal video untuk televisi bersesuaian dengan sinyal audio untuk system suara. Rincian yang lebih jelas dari sinyal gambar AM (Amplitude Modulated) dan sinyal suara FM yang berhubungan dijelaskan pada bab-bab berikut.

2.1.TRANSMISI NEGATIF


Putih puncak (peak white) dalam sinyal video menghasilkan amplitude paling rendah sinyal gambar AM. Hasil ini dilakukan oleh modulasi dengan polaritas negative. Sinyal pemodulasi dipasang pada polaritas yang mengurangi amplitude pembawa RF untuk putih puncak dalam sinyal video. Ujung penyelarasan menghasilkan amplitude pembawa maksimum, yaitu level 100 persen.
Perhatikan amplitude relative berikut untuk sinyal gambar RF termodulasi-amplitudo pada gambar 11-1.
Ujung penyelarasan = 100%
Level pengosongan = 75%
Pemasangan hitam = 67,5%
Putih maksimum = 10 – 15 % atau 12,5 %
Pulsa penyelarasan menempati puncak 25% dari amplitude pembawa. Informasi gambar adalah antara 67,5% untuk hitam rata-rata 12,5% untuk putih puncak. Walaupun modulasi kroma tidak diperhatikan disini, ia dimultipleksi pada sinyal pembawa gambar RF dengan nilai luminansi dalam rentang yang sama seperti informasi hitam dan putih.
Sinyal pembawa (carrier signal) tidak akan di bawah 10% sebab akan terdapat distorsi (cacat) bila amplitude menjadi nol. Selain itu, sinyal suara antar pembawa dalam penerima tidak dapat dihasilkan tanpa sinyal pembawa gambar.
Semua amplitude relative ini sama pada puncak atau dasar pembungkus modulasi. Setengah siklus pembawa RF yang positif dan negative adalah sama, yang menghasilkan suatu pembungkus simetri dari variasi amplitude. Faktor ini menjelaskan mengapa sinyal yang termodulasi harus diserahkan guna memulihkan sinyal frekuensi dasar (baseband) dalam pembungkus modulasi

2.1.1 KEUNTUNGAN TRANSMISI NEGATIVE


Satu keuntungan dari transmisi negative adalah bahwa pulsa-pulsa derau dalam sinyal RF yang di pancarakan memperbesar amplitude pembawa menuju hitam, dan putih. Efek ini membuat gangguan derau dalam memotong gambar tidak begitu nyata. Pemancar menggunakan daya yang lebih kecil dalam transmisi negative. Karena kebanyakkan gambar-gambar kebanyakkan adalah berwarna putih, amplitude pembawa pada kebanyakkan waktu adalah rendah sewaktu informasi gambar di pancarkan.
Barangkali yang paling pentingadalah keuntungan praktiskarena memiliki penyelarasan sebagai suatu acuan bagi kekuatan pembawa, yang tidak tergantung pada informasi gambar.sebuah rangkaian detector dioda puncak dapat dengan mudah memberikan tegangan searah (dc),yang sebanding dengan jumlah sinyal pembawa RF. Tegangan arus searah digunakan untuk bias dalam pengontrolan sistem penguatan secara otomatis (AGC – Automatic Gain Control) dari pesawat penerima.

2.1.2 AMPLITUDO IRE DAN PEMBAWA.

Dalam sinyal video komposit yang digunakan sebagai sinyal baseband untuk modulasi,biasanya amplitudo relative ditujukan dalam skala IRE. Sinyal video komposit bervariasi dari -40 unit IRE pada ujung penyelarasansampai level pengosongan +100% unit IRE untuk putih puncak. Amplitudo-amplitudo yang bersesuaian pada gambar 11-1 adalah 100% level pembawa untuk penyelarasan ujung, 75 % untuk level pengosongan dan 12,5% untuk putih puncak (peak white),rincian yang lebih lanjut dari perbandingan ini diberikan pada table 11-1. ringkasannya,40 unit.
IRE dari penyelarasan bersesuaian dengan puncak 25 persen dari amplitude pembawa. Ke 10 unit ire untuk setiap hitam bersesuaian dengan 7,5 persen sinyal pembawa. Level IRE dari 100 persen menjadi 12,5 persen dari amplitude pembawa pada putih puncak. Sebenarnya,20 lagi unit IRE,sampai 120 bersesuaian dengan 12,5 persen amplitude pembawa yang tidak digunakan untuk modulasi.

BAB III
TV DIGITAL


3.1 Frekuensi TV Digital

Secara teknik pita spektrum frekuensi radio yang digunakan untuk televisi analog dapat digunakan untuk penyiaran televisi digital. Lebar pita frekuensi yang digunakan untuk analog dan digital berbanding 1 : 6 artinya bila pada teknologi analog memerlukan pita selebar 8 MHz untuk satu kanal transmisi, maka pada teknologi digital dengan lebar pita frekuensi yang sama. dengan teknik multiplek dapat digunakan untuk memancarkan sebanyak 6 hingga 8 kanal transmisi sekaligus dengan program yang berbeda.
Selain ditunjang oleh teknologi penerima yang mampu beradaptasi dengan lingkungan yang berubah, TV digital ditunjang oleh sejumlah pemancar yang membentuk jaringan berfrekuensi sama sehingga daerah cakupan dapat diperluas. Produksi peralatan pengolah gambar yang baru adalah dengan menggunakan format digital.
Teknologi digital efisien dalam pemanfaatan spektrum. Satu penyelenggara televisi digital meminta spektrum dalam jumlah yang cukup besar. Artinya tidak hanya 1 (satu) kanal pembawa melainkan lebih. Penyelenggara berfungsi sebagai operator penyelenggara jaringan yaitu untuk mentransfer program dari stasiun televisi lain yang ada di dunia menjadi satu paket layanan sebagaimana penyelenggaraan televisi kabel berlangganan yang ada saat ini.

3.2 Kelebihan Frekuensi TV Digital

Meningkatnya penyelenggaraan televisi dimasa depan dapat diantisipasi dengan suatu terobosan kebijakan dalam pemanfaatan spektrum frekuensi, misalkan penyelenggara televisi digital berfungsi sebagai operator penyelenggara jaringan televisi digital. Program dapat diselenggarakan oleh operator yang khusus menyelenggarakan jasa program televisi digital (operator lain). Dari aspek regulasi terdapat ijin penyelenggara jaringan dan ijin penyelenggara jasa sehingga dapat menampung sekian banyak perusahaan baru yang akan bergerak dibidang penyelenggaraan televisi digital.
Perspektif bentuk penyelenggaraan sistem penyiaran di era digital mengalami perubahan baik dari pemanfaatan kanal maupun teknologi jasa pelayanannya. Pada pemanfaatan kanal frekuensi terjadi efisiensi penggunaan kanal. Satu kanal frekuensi yang saat ini hanya bisa diisi oleh satu program saja nantinya bisa diisi antara empat sampai enam program sekaligus.

3.3 Karakteristik Sistem Penyiaran TV Digital Terestrial

Sistem Penyiaran TV Digital yang ada di Indonesia dibagi berdasarkan kualitas penyiaran, manfaat dan keunggulan TV Digital tersebut. TV Digital dalam perkembangannya memiliki karakteristik yang berbeda di tiap wilayah(area) penyiaran. Karakteristik sistem penyiaran TV Digital sama di radius yang sama.

3. 3.1 Kualitas Penyiaran TV Digital


Desain dan implementasi sistem siaran TV digital terutama ditujukan pada peningkatan kualitas gambar. TV digital memungkinkan pengiriman gambar dengan akurasi dan resolusi tinggi. TV digital memerlukan tersedianya kanal dengan laju tinggi. Sistem TV digital mampu menghasilkan penerimaan gambar yang jernih, stabil, dan tanpa efek bayangan atau gambar ganda, walaupun pesawat penerima berada dalam keadaan bergerak dengan kecepatan tinggi.

3.3. 2 Manfaat Penyiaran TV Digital

•TV Digital digunakan untuk melihat simpanan program, (siaran interaktif).
•Aplikasi teknologi siaran digital menawarkan integrasi dengan layanan interaktif seperti layanan komunikasi dua arah. Televisi digital dapat digunakan seperti [[internet]
•Penyiaran TV Digital Terrestrial bisa diterima oleh sistem penerimaan TV tidak bergerak dan penerimaan TV Bergerak. Kebutuhan daya pancar TV digital juga lebih kecil dan kondisi lintasan radio yang berubah-ubah terhadap waktu (seperti yang terjadi jika penerima TV berada di atas mobil yang berjalan cepat).

3.4 Transisi ke TV Digital


Pesawat TV analog tidak bisa menerima sinyal digital, maka diperlukan pesawat TV digital yang baru agar TV dapat menggunakan alat tambahan baru yang berfungsi merubah sinyal digital menjadi analog. Proses perpindahan dari teknologi analog ke teknologi digital membutuhkan sejumlah penggantian perangkat baik dari sisi pemancar TV-nya ataupun dari sisi penerima siaran. Transisi ke TV Digital menyebabkan tersedianya saluran siaran yang lebih banyak.
Proses transisi perpindahan meminimalkan resiko kerugian khusus yang dihadapi baik oleh operator TV maupun masyarakat. Resiko kerugian khusus yang dimaksud adalah informasi program ataupun perangkat tambahan yang harus dipasang. Perubahan dilakukan melalui masa dimana sebelum masyarakat mampu membeli pesawat penerima digital dan pesawat penerima analog yang dimilikinya dipakai menerima siaran analog dari pemancar TV yang menyiarkan siaran TV Digital.
Masa transisi diperlukan untuk melindungi pemirsa (masyarakat) yang telah memiliki pesawat penerima TV analog untuk dapat secara perlahan-lahan beralih ke teknologi TV digital dengan tanpa terputus layanan siaran yang ada selama ini. Operator TV yang sudah ada dapat memanfaatkan infrastruktur yang telah dibangun, seperti studio, bangunan, SDM dan lain sebagainya. Infrastruktur TV digital terrestrial relatif jauh lebih mahal dibandingkan dengan infrastruktur TV analog.
Pola Kerja Sama Operasi ditempuh antar penyelenggara TV yang sudah ada dengan calon penyelenggara TV digital. Sehingga di kemudian hari penyelenggara TV digital dapat dibagi menjadi penyedia jaringan dan penyedia isi.