RSS
Tidak ada Yang Tidak Mungkin Untuk Orang Yang Mau Berusaha
Text Select Onion Kun

Senin, 29 November 2010

PROGRAM KALKULATOR PADA JAVA

import java.awt.*;
import java.awt.event.*;

public class Kalkulator extends Frame implements WindowListener, ActionListener {
TextField txtBil1, txtOpr, txtBil2, txtHasil;
Button btnHitung;

public Kalkulator(String judul) {
super(judul);
this.addWindowListener(this);
this.setLayout(new FlowLayout(FlowLayout.LEFT,10,10));
txtBil1 = new TextField();
txtBil1.setColumns(5);
txtOpr = new TextField();
txtOpr.setColumns(5);
txtBil2 = new TextField();
txtBil2.setColumns(5);
txtHasil = new TextField();
txtHasil.setColumns(5);
btnHitung = new Button(" = ");
btnHitung.addActionListener(this);
add(txtBil1);
add(txtOpr);
add(txtBil2);
add(btnHitung);
add(txtHasil);
}
public void windowActivated(WindowEvent e) {}
public void windowClosed(WindowEvent e) {}
public void windowClosing(WindowEvent e) {
setVisible(false);
System.exit(0);
}
public void windowDeactivated(WindowEvent e) {}
public void windowDeiconified(WindowEvent e) {}
public void windowIconified(WindowEvent e) {}
public void windowOpened(WindowEvent e) {}

public void actionPerformed(ActionEvent e) {
double a, b, hasil;
String c;
if (e.getSource() == btnHitung){
a = Double.parseDouble(txtBil1.getText());
b = Double.parseDouble(txtBil2.getText());
c = txtOpr.getText();
if (c.equals("*")) {
hasil = a * b;
} else if (c.equals("/")) {
hasil = a / b;
} else if (c.equals("+")) {
hasil = a + b;
} else if (c.equals("-")) {
hasil = a - b;
} else {
hasil = 0;
}

txtHasil.setText(""+hasil);
}
}

public static void main(String[] args) {
Kalkulator frm = new Kalkulator("Kalkulator Culun");
frm.setSize(500, 200);
frm.setVisible(true);
}
}

Menentukan IrisanHimpunan dengan BufferedReader pada Java

HIMPUNAN
Kita akan membuat program untuk membentuk suatu himpunan dengan menggunakan program java. Lalu kita akan menentukan irisan yang terjadi antara 2 himpunan yang kita input kan nilai masing – masing element nya.

LISTING :

import java.io.*;
class himpunan
{
public static void main(String[] args) throws Exception
{
BufferedReader input = new BufferedReader (new InputStreamReader (System.in));
System.out.print("Masukkan banyaknya himpunan A:");
int x = Integer.parseInt (input.readLine());
int himpA[] = new int [x];
for (int i=0; i
{
System.out.print("Masukkan elemen A ke-"+(i+1)+":");
String a = input.readLine();
himpA [i] = Integer.parseInt (a);
}
System.out.print ("A={");
for (int i=0; i
{
System.out.print (himpA [i]);
if (i != x-1)
System.out.print (",");
}
System.out.println ("}");
System.out.print("Masukkan banyaknya himpunan B:");
int y = Integer.parseInt (input.readLine());
int himpB[] = new int [y];
for (int j=0; j
{
System.out.print("Masukkan elemen B ke-"+(j+1)+":");
String B = input.readLine();
himpB [j] = Integer.parseInt (B);
}
System.out.print ("B={");
for (int j=0; j
{
System.out.print (himpB [j]);
if (j != y-1)
System.out.print (",");
}
System.out.println ("}");
int k=0;
int himpC [] = new int [100];
for (int i=0;i
{
for (int j=0;j
{
if (himpA [i]==himpB [j])
{
himpC [k]=himpA [i];
k=k+1;
}
}
}
System.out.print ("\n Irisannya = {");
for (int i=0;i
{
System.out.print (himpC [i]);
if (i!=k-1)
System.out.print (",");
}
System.out.println ("}");
}
}

LOGIKA PROGRAM :
1. Karena kita akan akan memanipulasi data dengan cara memasukan nilainya masing – masing maka kita menggunakan salah satu kelas input data, yaitu BufferedReader, dan BufferedReader berada dalam package java io, Karen itu kita menggunakan perintah “import java.io.*;”untuk mengimport BufferedReader tersebut
2. Menamakan nama kelas pada workbench java, pada listing diatas adalah “ himpunan”
3. Mmenuliskan method yang akan kita gunakan yaitu “public static void main(String[] args) throws Exception”
4. Mendeklarasikan suatu variable (dalam lsiting diatas dengan nama input)yang akan kita gunakan sebagai tempat penyimpanan data nantinya,dengan perintah “BufferedReader input = new BufferedReader (new InputStreamReader (System.in))”
5. Mencetak tulisan "Masukkan banyaknya himpunan A:", dengan perintah “System.out.print("Masukkan banyaknya himpunan A:");”
6. Mendeklarasikan variabel x sebagai tempat penyimpanan data untuk nilai “banyak himpunan A” yang sebelumnya disimpan dalam varibel input.Dengan perintah ”int x = Integer.parseInt (input.readLine());”
7. Mendelarasikan himpA dengan menggunakan aray, yang nilai nya berasal dari nilai yang telah disimpan dalam variabel x. Dengan perintah ”int himpA[] = new int [x];”
8. Mendeklarasikan variabel i sekaligus dengan beberapa ketentuan – ketentuan yang akan di eksekusi. Dengan perintah “for (int i=0; i
9. Statement yang akan dieksekusi jika statement for diatas masih terpenuhi adalah 1.”System.out.print("Masukkan elemen A ke-"+(i+1)+":");” karena nilai i awalnya 0 maka untuk nilai yang akan muncul harus ditambahkan 1 agar sesuai dengan nilai yang tadi kita masukan
2. String a = input.readLine();, mendeklrasikan variabel a dengan tipe data string yang akan menyimpan data yang telah kita masukan tadi.3. himpA [i] = Integer.parseInt (a);, artinya banyak nya aray dalam variabel himpA adalah sebanyak i, dengan nilai masing – masing berasal dari varibel a tadi,yang tadinya tempat penyimpanan nilai ”masukan element A ke“.
10. apabila nilai i yang kita masukan tidak lagi kurang dari nilai x yang kita masukan, maka statement for tidak akan lagi di eksekusi, statement yang akan di eksekusi adaalah 1. Menampilkan tulisan A={, dengan perintah ”System.out.print ("A={");”2. Membuat sebuah keadaan yang akan menampilkan element – element dari himpunan a dengan perintah “for (int i=0; i
11. jika statement for ini terpenuhi, maka statement yang akan dieksekusi adalah 1. Mecetak nilai dari himpunan A yang masing – masing tadi telah kita masukan dalam “ masukan element A ke –“ disini nilai tersebut akan dicetak, dengan perintah “System.out.print (himpA [i]);“ 2.jika nilai i tidak sama dengan nilai x yang tadi dikurangi satu, akan mencetak maka sebuah tanda koma (tanda koma digunakan untuk memisahkan nilai i yang satu dengan yang lain.
12. Setelah nilai i sudah tidak lagi kurang dari x, maka statement for tersebut tidak akan dieksekusi lagi, maka statement yang akan dieksekusi adalah statement pencetakan “}”.
13. Penjelasan untuk himpunan B adalah sama, hanya berbeda nama – nama variabel, karena jika nama variabel sama, tempat pnyimpan akan sama, dan data yang dieksekusi pun akan sama.
Untuk mempersingkat, kita langsung masuk kedalam logica dari listing irisan.
14. irisan adalah kumpulan dari element – element yang sama antara himpunan satu dengan himpunan yang lainnya. Berikut adalah logica nya:
15. mendeklarasikan nilai variabel k dengan nilai 0, “int k=0;”.
16. Mendeklarasikan variabel aray himpC dengan dengan memory sebnyak 100,” int himpC [] = new int [100];”.
17. Membuat suatu keadaan lagi, dengan perintah for, agar kedua variabel bisa kita bandingkan, ”for (int i=0;i18. jika statement tersebut sudah tidak terpenuhi, maka statement – statement berikutlah yang akan di eksekusi: 1.”System.out.print ("\n Irisannya = {");”, artinya akan mencetak tulisan “Irisannya = {“ 2.”Statement “for (int i=0;i
19. jika kondisi dari “for (int i=0;i
20. jika kondisi “for (int i=0;i

Sabtu, 27 November 2010

LA MATIV PERTEMUAN II RELASI

import java.io.*;
class relasi
{
private static BufferedReader input = new BufferedReader (new InputStreamReader(System.in));
public static void main(String[] args) throws Exception
{

System.out.print(" Aplikasi Relasi Matematika Infomatika – Muammar Qadafi ");
System.out.print("Masukkan Banyak Himpunan A : ");
int x=Integer.parseInt(input.readLine());
int himpA [] = new int[x];
for(int i=0; i
{
System.out.print("Masukkan Elemen A ke-"+(i+1)+" :");
String a=input.readLine();
himpA[i]=Integer.parseInt(a);
}
System.out.print("Anggota Himpunan A = {");
for(int i=0;i
{
System.out.print(himpA[i]);
if(i!=x-1)
System.out.print(",");
}
System.out.println("}");
System.out.println();

System.out.print("Masukkan Banyak Himpunan B : ");
int y=Integer.parseInt(input.readLine());
int himpB [] = new int[y];
for(int j=0; j
{
System.out.print("Masukkan Elemen B ke-"+(j+1)+" :");
String b=input.readLine();
himpB[j]=Integer.parseInt(b);
}
System.out.print("Anggota Himpunan B = {");
for(int j=0;j
{
System.out.print(himpB[j]);
if(j!=y-1)
System.out.print(",");
}
System.out.println("}");
System.out.println();


System.out.println ("=======================");
System.out.println (" Jenis Relasi " );
System.out.println ("=======================");
System.out.println ("1. reflektif sederhana");
System.out.println ("2. simestris sederhana");
System.out.println ("3. transitif sederhana");
System.out.println ("=======================");
System.out.print ("Masukan Jenis Relasi yang diinginkan : ");
String c=input.readLine();
int pil=Integer.parseInt(c);
System.out.println();
switch (pil)
{
case 1:
//membuat relasi reflektif himpunan A dan himpunan B
System.out.print ("Relasi R = {");
for (int i=0; i
{
for (int j=0; j
{
if (himpA[i]==himpB[j])
{
System.out.print ("("+himpA[i]+","+himpB[j]+")");
if(j!=y-1)
System.out.print (",");
}
}
}
System.out.println ("}");
System.out.println ();
break;

case 2:
//membuat relasi simetris himpunan A dan himpunan B
System.out.print ("Relasi R = {");
for (int i=0; i
{
for (int j=0; j
{
if (himpA[i]!=himpB[j])
{
System.out.print ("("+himpA[i]+","+himpB[j]+")");
if(j!=y-1)
System.out.print (",");
}

}
if(i!=x-1)
System.out.print (",");
}
System.out.println ("}");
System.out.println ();
break;

case 3:
//membuat relasi transitif
System.out.print ("Relasi R = {");
for (int i=0; y
{
for (int j=0; j
{
if (himpA[i]!= himpB[j])
{
if (i%2!=0)
{
if (j==0)
{
System.out.print ("("+himpA[i]+","+himpB[j]+")");
f(j!=y-1)
System.out.print (",");
}
}
else
{
if (j%2!=0)
{
System.out.print ("("+himpA[i]+","+himpB[j]+")");
if(j!=y-1)
System.out.print (",");
}
}

}

}
}
System.out.println ("}");
System.out.println ();
break;

default:
System.out.println ("Pilihan tak ada dalam daftar!!");
break;
}
}
}

teori pada relasi dapat di download disini

Sabtu, 20 November 2010

menentukan jenis relasi himpunan dengan java

nah mudah mudahan bermanfaat bwat smuanya ..

langsung aja ya ...
tolong perhatikan lebih detail dikarenakan pada Java sensitive terhadap sesuatu yang dia anggap berbeda dari sistem induknya 

Kita akan membuat program untuk menentukan relasi yang dibentuk oleh 2 buah himpunan, dengan menggunakan program java

import java.io.*;
class relasi
{private static BufferedReader radzi = new BufferedReader (new InputStreamReader (System.in));
public static void main(String[] args) throws Exception{
System.out.print("masukan banyaknya himpunan A :");
String s = radzi.readLine();
int x = Integer.parseInt(s);
int himpA [] = new int [x];
for(int i = 0;i
{System.out.print("masukan element himpunan A ke - " +(i+1)+" :");
String a = radzi.readLine();
himpA [i] = Integer.parseInt(a);
}
System.out.print("A = {");
for (int i=0;i
{
System.out.print(himpA[i]);
if(i != x-1)
System.out.print(",");
}
System.out.println("}");
System.out.println();
System.out.println(" jenis relasi");
System.out.println("=================");
System.out.println("1. Reflektif Sederhana");
System.out.println("2. Simetris Sederhana");
System.out.println("3. Transitif Sederhana");
System.out.println("======================");
System.out.print("Masukan pilihan anda : ");
String r = radzi.readLine();
int d = Integer.parseInt(r);
switch (d)
{
case 1:
System.out.print("relasi R = { ");
for (int i= 0;i
{
for (int j =0;j
{
if (himpA [i]== himpA[j])
{
System.out.print("(" +himpA [i]+ "," +himpA [j]+ ")");
if (j != x-1)
System.out.print(",");
}
}
}
System.out.println("}");
break;

case 2:
System.out.print("relasi R = { ");
for (int i= 0;i
{
for (int j =0;j
{
if (himpA [i]!= himpA[j])
{
System.out.print("(" +himpA [i]+ "," +himpA [j]+ ")");
if (j != x-1)
System.out.print(",");
}}}
System.out.println("}");
break;

case 3 :
System.out.print("relasi R = { ");
for (int i= 0;i
{
for (int j =0;j
{
if (himpA [i]!= himpA[j])
{
if(i%2!=0)
{
if(j%2==0)
{
System.out.print("(" +himpA [i]+ "," +himpA [j]+ ")");
if (j != x-1)
System.out.print(",");
}
else
{
if(j%2 != 0)
{
System.out.print("(" +himpA [i]+ "," +himpA [j]+ ")");
if (j != x-1)
System.out.print(",");
}
}
}
}
}
}
System.out.println("}");
break;
default :
System.out.print("pilihan tidak ada dalam aftar");
break;
}
}
}
Listing diatas adalah listing dari beberapa sifat – sifat relasi, diantaranya :
- Sifat reflektif yang artinya untuk setiap anggota haru merupakan gabungan 2 anggota himpunan yang sama.dengan kata lain anggota untuk sifat ini, harus beranggotakan (a,a)
- Sifat simetris yang artinya untuk stiap yang anggota himpunan,hasilnya tidak boleh ada anggota dati relasi yang memiliki nilai (a,a), dan juga nila(a,b) tidak sama dengan nilai dari (b,a)
- Sifat transitif yang artinya tiga dari kumpulan bilangan harus merupakan anggota dari relasi R

Contoh : R = “x habis membagi y” pada A = {1,2,3}
- Berlaku sifat treflektif karena setiap elemant dari A berlaku (a,a) anggota relasi R. yaitu (1,1),(2,2),(3,3).
- berlaku sifat simetris karena bias dibentuk anggota (1,2),(2,1),(1,3),(3,1)…
- Tidak transitif karena seharusnya (a,b) anggota R, (b,c)anggota R, dan (b,c) anggota R juga. Tetapi sini. Anggota dari relasi R adalah { (1,2),(2,4)}. (1,2) anggota R, (2,4) anggota R, tetapi (1,4) bukan anggota dari relasi R

Diatas adalah sifat – sifat dari relasi yang akan telah buat programnya, berikut adalah logika dari program yang kiata buat :

• import java.io.*;
Statement diatas menjelaskan bahwa kita akan menggunakan java.io package mengandung kelas-kelas yang memungkinkan program untuk melakukan input dan output data.
• class relasi
nama class nya adalah relasi
• BufferedReader radzi = new BufferedReader (new radziStreamReader(System.in));
maksud statement diatas adalah variable yang di gunakan adalah BufferedReader yang digunakan untuk menginput data string ke dalam program
• public static void input() throws Exception
maksud statement ini adalah untuk memnungkin kan terjadi kesalahan dalam menginput data.
• System.out.print("masukan banyaknya himpunan A :");
String s = radzi.readLine();
int x = Integer.parseInt(s);
int himpA [] = new int [x];

statement di atas maksud nya adalah perintah untuk memasukan inputan dengan perintah nya adalah “masukan banyaknya himpunan A:” yang inputan tersebut adalah bentuk integer yg di lambang kan dengan x. himpA adalah x.
• for(int i=0; i
{
System.out.print("masukkan elemn A ke-"+(i+1)+" :");
String a=input.readLine();
himpA[i]=Integer.parseInt(a);
}
Statement ini adalah perintah pengulangan dalam penginputan himpunan A dengan syarat apakah i-=0 dan i
• System.out.print("A={");
for(int i=0;i
{
System.out.print(himpA[i]);
if(i!=x-1)
System.out.print(",");
}
System.out.println("}");
ini adalah perintah untuk mencetak kata “A={“ kemudian perintah pengulangan dengan syarat apakah i=0 dan i
● Lalu kita akan menentukan pilihan , sifat maan yang akan kita gunakan untuk mengolah data – data yang telah kita masukan :
System.out.println("1. Reflektif Sederhana");
System.out.println("2. Simetris Sederhana");
System.out.println("3. Transitif Sederhana");
System.out.println("======================");
System.out.print("Masukan pilihan anda : ");
String r = radzi.readLine();
int d = Integer.parseInt(r);
switch (d)
lalu pilihan yang kita masukan akan dismpan dalam variabel d, dan akan dieksekusi sesuai dengan pilihan yang kita masukan dengan menggunakan printah switch (d)

Case 1:
System.out.print("relasi R = { ");
for (int i= 0;i
{
for (int j =0;j
{
if (himpA [i]== himpA[j])
{System.out.print("(" +himpA [i]+ "," +himpA [j]+ ")");
if (j != x-1)
System.out.print(",");
}
}
}
System.out.println("}");
}

Ini adalah perintah untuk mencari dan mencetak relasi nya. Di mulai dari mencentak kata “relasi R = {“ dan slanjutnya syarat relasi dengan pengulangan, apakah i=0?? Dan i

Sesuai dengan sifat relasi nomor 1, yaitu reflektif yang artinya anggota hanay bernilai (a,a), sehingga kita menggunakan perintah if (himpA [i]== himpA[j]) , jadi nilai – nilai yang akan tercetak hanyalah apabila nilai dari himpA yang ke i bernilai sama dengan himpa yang ke j.
case 2:
System.out.print("relasi R = { ");
for (int i= 0;i
{
for (int j =0;j
{
if (himpA [i]!= himpA[j])
{
System.out.print("(" +himpA [i]+ "," +himpA [j]+ ")");
if (j != x-1)
System.out.print(",");
}}}
System.out.println("}"); break;
Pilihan kedua dari menu diatas adalah sifat simtris jadi kita harus membuat listing dengan karakteristik dari sifat tersebut.
- Membuat perintah for agar anggota himpunan dapat ditentukan, dengan nama variabel i.variabel i bernialai awal = 0, jika nilai i masih kurang dari nilai x(nilai awalyang tadi kita telah masukan) maka akan memproses variabel j.
- Jika nilai dari varibel j, masih kurang juga dari nilai x, maka perintha if akan dijalankan,
- Jika nilai dari himpA yang ke – i tidak sama dengan nilai dari himpA yang ke j, maka akan mencetak nilai dari himpA yang ke -I , nilai dari himpA yang ke- j.
- Lalu jika nilai j tidak sama dengan nilai x-1 maka akan mencetak koma. Lalu akan kembali lagi keatas dengna nilai i bertambah 1, namun jika nilai j sudah = nilai x-1 maka akan mencetak }, dan dan program akan berhenti, dengan perintah bresk, yang artinya case 2 telah selsai
Sesuai dengan karakteristiknya kita membuat, apabila nilai dari himpA yang ke i tidak sama dengan himpA yang ke j(agar tidak diahailkan anggota relasi dengan elemant yang sama) maka nilai itulah yang menjadi hasil dari karakteeristik sifat ini, kita telah membuatnya dengan perintah :

if (himpA [i]!= himpA[j])
{
System.out.print("(" +himpA [i]+ "," +himpA [j]+ ")");

case 3 :
System.out.print("relasi R = { ");
for (int i= 0;i
{
for (int j =0;j
{
if (himpA [i]!= himpA[j])
{
if(i%2!=0)
{
if(j%2==0)
{
System.out.print("(" +himpA [i]+ "," +himpA [j]+ ")");
if (j != x-1)
System.out.print(",");
}
else
{
if(j%2 != 0)
{
System.out.print("(" +himpA [i]+ "," +himpA [j]+ ")");
if (j != x-1)
System.out.print(",");
}
}
}
}
}
}
System.out.println("}");
break;


Dalam case 3 ini, kita akan menjalan kan sifat transitif, hampir sama dengan sifat simetris, dalam listing ini kita menambahkan keyword if, agar hanya beberapa angka saja yang akan dicetak,

- Dalam if yang pertama, jika nilai dari i dibagi dengan 2 tidak bersisa 0( bilangan ganjil) maka baru akan masuk kedalam if yang ke 2
- Dalam if yang ke 2 ini kita akan menyeleksi nilai dari j, apabila nilai j dibagi dengan 2, menyisakan 0(bilangan genap), maka nilai dari himpA yang ke i dan nilai dari himpA yang ke j, baru akan di cetak.
- Namun karena karakteristik dari sifat ini mengharuskan element dari anggota yang pertama harus bisa membagi habis anggota kedua element pertama, dan anggota ke 2 pada element manapun boleh bernilai apa saja, jika harus menambahkan keyword else, untuk mensortir nialai dari variabel j, artinya nilai dari variabel j, baik itu bilangan genap, ataupun ganjil, nilainya akan tetap dicetak, tetapi dengan penempatan tempat anggota yang berbeda

Kita menambahkan keyword if dan else, agar nilai – nilai dari variabel i dan j yang tercetak bisa sesuai dengan karakteristik dari difat ini.


default :

artinya, pilihan awal yang kita masukan tidak ada didalam program yang kita buat, dalam listing ini jika kita memasukan pilihan yang tidak ada didalam program maka akan mngeluaerkan tukisan :“ tidak ada dalam daftar “


Saat menentukan sifat mana yang akan kita gunakan, kita memilih pilihan ke 4, yang tidak ada dalam daftar menu, maka default inilah yang akan dijalankan.

(set) Himpunan dalam Java

Himpunan (set) adalah kumpulan Object yang mana tidak boleh ada dua dari objek yang sama di dalam satu himpunan. Objek obj1 dan obj2 adalah objek yang sama jika obj1.equals(obj2) menghasilkan nilai true (lihat bagian sebelumnya untuk penjelasan tentang ini).
Set mengimplementasikan metode umum pada Collection dengan sedikit modifikasi sehingga tidak memiliki objek yang sama di dalamnya. Misalnya, jika set adalah objek bertipe Set maka set.add(obj) tidak melakukan apa-apa jika obj sudah ada di dalam set.
Java memiliki dua kelas yang mengimplementasikan interface Set, yaitu java.util.TreeSet dan java.util.HashSet.
Selain sebagai Set, objek bertipe TreeSet memiliki sifat di mana elemen-elemennya terurut dalam urutan menaik. Iterator dari suatu TreeSet akan mengunjungi elemen dalam set tersebut dalam urutan menaik.
TreeSet tidak bisa menyimpan semua objek, karena objek yang disimpan harus bisa diurutkan. Atau dengan kata iain, objek yang disimpan dalam TreeSet harus mengimplementasikan interface Comparable dan obj1.compareTo(obj2) harus bisa membandingkan 2 objek obj1 dan obj2 dengan baik. Atau cara lainnya adalah dengan menggunakan Comparator yang bisa dimasukkan sebagai parameter dalam konstruktor ketika TreeSet dibuat. Di sini Comparator digunakan untuk membandingkan objek yang akan dimasukkan di dalam set.
Pada implementasi TreeSet, elemen di dalamnya disimpan dalam bentuk yang mirip dengan pohon pengurutan biner . Pohon yang digunakan bersifat seimbang (balanced) yang artinya semua simpul daunnya berjarak sama dari akar pohonnya. Dengan menggunakan pohon seimbang, kita bisa memastikan bahwa kita bisa mencapai semua simpul daunnya dengan secepat mungkin. Menambah dan mengurangi simpulnya juga bisa dilakukan dengan cepat.
Karena TreeSet mengurutkan elemen-elemennya dan menjamin tidak ada duplikasi objek, TreeSet sangat berguna untuk beberapa aplikasi. Misalnya, kita akan membuat program untuk menghitung semua kata dalam suatu artikel dan menampilkan semua kata yang ditemukan. List kata-kata dalam artikel itu harus diurutkan, kemudian kata-kata yang sama dihapus. Dengan menggunakan TreeSet, program tersebut dapat dibuat dengan sangat mudah, menjadi :
TreeSet kata = new TreeSet();
 
while masih ada data dari input :
    kt = kata berikutnya dari input
    kata.add(kt);
 
Iterator iter = kata.iterator();
while (iter.hasNext()):
    Tampikan iter.next() ke layar.
Contoh lainnya, misalnya kol adalah koleksi String (atau tipe lain yang mengimplementasikan compareTo()). Kita bisa menggunakan TreeSet untuk mengurutkan item dari kol dan menghapus duplikasi dengan :
TreeSet set = new TreeSet();
set.addAll(kol);
Perintah baris kedua di atas menambah semua elemen dari kol ke dalam set. Karena berbentuk Set, maka duplikasi akan dihapus. Karena berbentuk TreeSet maka semua elemennya akan terurut. Jika kita ingin data tersebut disimpan dalam struktur data lain, kita bisa mengubahnya dengan mudah. Misalnya, untuk membuat ArrayList dari TreeSet, bisa kita tulis dengan :
TreeSet set = new TreeSet();
set.addAll(kol);
ArrayList list = new ArrayList();
list.addAll(set);
Sebetulnya, kelas koleksi Java memiliki konstruktor yang bisa mengambil parameter berbentuk Collection. Semua item dalam Collection ditambahkan ke dalam koleksi baru ketika dibuat. Jadi new TreeSet(kol) membuat TreeSet yang memiliki elemen yang sama seperti koleksi kol.
Atau kita bisa menyingkat keempat baris kode di atas dalam satu baris kode :
ArrayList list = new ArrayList( new TreeSet(kol) );
Hasilnya adalah list terurut dengan elemen dari kol tanpa duplikasi. Ini adalah contoh dari keampuhan pemrograman generik.
(Sepertinya tidak ada struktur data list dengan duplikasi pada Java, atau TreeSet yang membolehkan duplikasi. Pada bahasa pemrograman C++ struktur data ini disebut multiset. Pada bahasa Smalltalk, struktur data seperti ini disebut bag (kantong). Pada Java, untuk saat ini, tidak ada struktur data seperti ini.)

HashSet mengimplementasikan tabel hash yang akan kita bahas di bagian berikutnya. Operasi penambahan, pencarian, dan penghapusan dilakukan dengan sangat efisien pada tabel hash, bahkan lebih cepat lagi dari TreeSet. Elemen pada HashSet tidak disimpan dalam urutan tertentu.
Iterator dari HashSet akan mengunjungi elemen-elemen pada HashSet dalam urutan yang sepertinya acak dan mungkin berubah jika elemen baru ditambahkan.
Karena elemen pada HashSet tidak diurutkan, maka semua objek (termasuk yang tidak mengimplementasikan interface Comparable) bisa dimasukkan dalam HashSet. Kita bisa menggunakan HashSet jika elemen yang kita akan masukkan tidak bisa dibandingkan, atau urutannya tidak penting, atau jika kecepatan lebih dipentingkan.

LAPORAN AKHIR MATIV PERTEMUAN I

import java.util.Scanner;

public class himpunanLA{
       Scanner input = new Scanner(System.in);
       int[] himpunanA= new int[100];
       int[] himpunanB= new int[100];
       int jumlahAnggotaA;
       int jumlahAnggotaB;

       public void dataAnggota() {

              System.out.print("\nMasukkan Jumlah Anggota Himpunan A : ");
              jumlahAnggotaA = input.nextInt();

              System.out.println("Anggota Himpunan A");
              for(int i=1;i<=jumlahAnggotaA;i++){
                      System.out.print("Anggota "+i+" : ");
                      himpunanA[i]=input.nextInt();
              }

              System.out.print("\nMasukkan Jumlah Anggota Himpunan B : ");
              jumlahAnggotaB = input.nextInt();

              System.out.println("Anggota Himpunan B");
               for(int i=1;i<=jumlahAnggotaB;i++){
                      System.out.print("Anggota "+i+" : ");
                      himpunanB[i]=input.nextInt();
              }
       }

       public void tampilAnggota(){
              System.out.print("\nAnggota Himpunan A = { ");
              for(int i=1;i<=jumlahAnggotaA;i++){

                System.out.print(himpunanA[i]+"   ");
              }
              System.out.println("}");

              System.out.print("Anggota Himpunan B = { ");
              for(int i=1;i<=jumlahAnggotaB;i++){
                System.out.print(himpunanB[i]+ "  ");
              }
              System.out.println("}");
       }

       public void himpunanGabungan(){
          System.out.print("Himpunan Gabungan A U B : { ");
          for(int i=1;i<=jumlahAnggotaA;i++){
                System.out.print(himpunanA[i]+" ");
              }
          for( int i=1;i<=jumlahAnggotaB;i++){
              boolean adaSama = false;
              for(int j=1;j<=jumlahAnggotaA;j++){
                     if(himpunanB[i]==himpunanA[j])
                            adaSama=true;
              }
              if(adaSama==false){
                 System.out.print(himpunanB[i]+" ");
              }
          }
          System.out.println("}");
       }

       public void himpunanIrisan(){
              System.out.print("Himpunan Irisan A n B : { ");

              for( int i=1;i<=jumlahAnggotaB;i++){
                   boolean adaSama = false;
                   for(int j=1;j<=jumlahAnggotaA;j++){
                     if(himpunanB[i]==himpunanA[j])
                            adaSama=true;
              }
              if(adaSama==true){
                 System.out.print(himpunanB[i]+" ");
              }
              }
              System.out.println(" }");
       }
       public void himpunanSelisih(){
              System.out.print("Himpunan Selisih A - B : { ");
              for( int i=1;i<=jumlahAnggotaA;i++){
                   boolean adaSama = false;
                   for(int j=1;j<=jumlahAnggotaB;j++){
                     if(himpunanA[i]==himpunanB[j])
                            adaSama=true;
              }
              if(adaSama==false){
                 System.out.print(himpunanA[i]+" ");
              }
              }
              System.out.println("}");

              System.out.print("Himpunan Selisih B - A : { ");
              for( int i=1;i<=jumlahAnggotaB;i++){
                   boolean adaSama = false;
                   for(int j=1;j<=jumlahAnggotaA;j++){
                     if(himpunanB[i]==himpunanA[j])
                            adaSama=true;
              }
              if(adaSama==false){
                 System.out.print(himpunanB[i]+" ");
              }

              }
              System.out.println("}");

       }

       public static void main(String args[]){
              himpunanLA bilangan = new himpunanLA();
              bilangan.dataAnggota();
              bilangan.tampilAnggota();
              bilangan.himpunanGabungan();
              bilangan.himpunanIrisan();
              bilangan.himpunanSelisih();
       }

}



Setelah masuk kedalam program Java masukkan dan ketikkan listing program ke dalam java
Himpunan adalah segala koleksi benda-benda tertentu yang dianggap sebagai satu kesatuan. Walaupun hal ini merupakan ide yang sederhana, tidak salah jika himpunan merupakan salah satu konsep penting dan mendasar dalam matematika modern, dan karenanya, studi mengenai struktur kemungkinan himpunan dan teori himpunan, sangatlah berguna. Himpunan juga dapat dikatakan kumpulan dari objek-objek tertentu yang tercakup dalam satu kesatuaan.

Lalu apa saja yang termasuk operasi-operasi pada himpunan??
berikut jawabannya,
1. Gabungan (Union)
    yaitu Gabungan dari himpunan A dan Himpunan B yang elemennya menjadi anggota dari A atau B.
    contoh: A = {1,7,9}
               B = {2,7,9}
          A È B = {1,2,7,9}

2. Irisan (Intersection)
    yaitu himpunan yang terdiri dari semua elemen A dan B
    contoh: A = {5,6,7,8}
                B = {7,8,9}
         A Ç B = {7,8}
3. Komplemen
    adalah himpunan yang terdiri dari himpunan S yang bukan anggota A.
    contoh: S = {1,2,3,4,5,6,7,8,9,10}
             A = {4,5}
            A' = {1,2,3,6,7,8,9,10}

  
4. Selisih
    ialah Himpunan yang anggota A bukan anggota dari B
.   contoh: A = {1,2,3,4,5}
                B = {2,4,6,7,10}
            A-B = {1,3,5}
import java.util.Scanner;
adalah untuk membaca inputan dari keyboard
Fungsi Scanner dalam bahasa java digunakan untuk meminta input oleh pengguna program tersebut. Berbeda dengan bahasa C, dalam membuat fungsi scanner perlu mengikuti prosedur seperti berikut :

1.Buat dahulu perintah awal scanner nya, syntax nya adalah sebagai berikut

Scanner namascanner = new Scanner(System.in);

namascanner yang dimaksud adalah sesuai
dengan keinginan kita (yang mudah2 aja lah...).
2.Selanjutnya kita akan membuat fungsi nextInt() untuk meminta input dari pengguna,
syntax nya adalah

variabel = namascanner.nextInt();

sekali lagi ingat, anda harus mencermati syntax nya dengan benar..
Setelah itu masukkan nilai variabel
       int[] himpunanA= new int[100];
       int[] himpunanB= new int[100];
 sama halnya seperti bentuk scanner pada inputan ini akan mengeksekusi nilai variabel himpunanA dan himpunanB
       int jumlahAnggotaA;
       int jumlahAnggotaB;
pada variabel ini akan mengeksekusi nilai integer dari jumlahAnggotaA dan nilai integer variabel jumlahAnggota B

public void dataAnggota() {

              System.out.print("\nMasukkan Jumlah Anggota Himpunan A : ");
              jumlahAnggotaA = input.nextInt();

              System.out.println("Anggota Himpunan A");
              for(int i=1;i<=jumlahAnggotaA;i++){
                      System.out.print("Anggota "+i+" : ");
                      himpunanA[i]=input.nextInt();
              }

              System.out.print("\nMasukkan Jumlah Anggota Himpunan B : ");
              jumlahAnggotaB = input.nextInt();

              System.out.println("Anggota Himpunan B");
               for(int i=1;i<=jumlahAnggotaB;i++){
                      System.out.print("Anggota "+i+" : ");
                      himpunanB[i]=input.nextInt();
              }
       }

pada bagian sub ini
Perhatikan public void dataAnggota(), terdapat kata void yang berarti metode tidak untuk menghasilkan sebuah nilai tertentu, tetapi hanya untuk mengerjakan sesuatu. Klo dipaskal sama seperti procedure, ingat dalam JAVA tidak ada procedure tapi hanya ada fungsi. Metode ini mengerjakan/ menampilkan semua atribut class ini.
System.out.print("\nMasukkan Jumlah Anggota Himpunan A : "
Pada sub ini akan menampilkan sebuah menu yang bernama
Masukkan Jumlah Anggota Himpunan A :
Hanya sekedar penamaan saja
jumlahAnggotaA = input.nextInt();
sedangkan pada bagian ini jumlahAnggotA akan digantikan sebagai inputan dari integer yang akan diinput oleh pengguna.
             

for(int i=1;i<=jumlahAnggotaA;i++){
                      System.out.print("Anggota "+i+" : ");
                      himpunanA[i]=input.nextInt();
              }

pada segmen ini for berarti pengulangan jadi jika integer i =1 dan i kurang dari jumlahAnggotaA yang di input maka I akan emngeksekusi terus  secara bertahap yaitu penambahan 1 sampai nilai i = jumlahAnggotaA terpenuhi .
                      System.out.print("Anggota "+i+" : ");
akan menghasilkan output berupa “Anggota” + nilai I yang dimasukkan + “:”
himpunanA[i]=input.nextInt[];
jadi himpunanA yang berinteger I akan sama dengan inputan dari baris selanjutnya sesuai dengan ketentuan dari pengguna.
public void tampilAnggota(){
              System.out.print("\nAnggota Himpunan A = { ");
              for(int i=1;i<=jumlahAnggotaA;i++){
                System.out.print(himpunanA[i]+"   ");
              }
              System.out.println("}");
              System.out.print("Anggota Himpunan B = { ");
              for(int i=1;i<=jumlahAnggotaB;i++){
                System.out.print(himpunanB[i]+ "  ");
              }
              System.out.println("}");
       }

pada method ini akan mengeluarkan output dan menampilkan Anggota Himpunan A  dan Himpunan B sesuai dengan ketentuan idem dengan diatas
public void himpunanGabungan(){
          System.out.print("Himpunan Gabungan A U B : { ");
          for(int i=1;i<=jumlahAnggotaA;i++){
                System.out.print(himpunanA[i]+" ");
              }
          for( int i=1;i<=jumlahAnggotaB;i++){
              boolean adaSama = false;
              for(int j=1;j<=jumlahAnggotaA;j++){
                     if(himpunanB[i]==himpunanA[j])
                            adaSama=true;
              }
              if(adaSama==false){
                 System.out.print(himpunanB[i]+" ");
              }
          }
          System.out.println("}");
       }

pada sub method ini akan menampilkan suatu output Himpunan Gabungan dari nilai A dan B kita ketahui bahwa lambing “U” adalah nilai gabungan
for(int i=1;i<=jumlahAnggotaA;i++){
bagian ini akan melakukan proses pengulangan jika nilai I =1 dan I kurang dari jumlahAnggota…. Maka I akan terus melakukan proses looping dan I ++ akan melakukan proses looping secara bertahap yakni pertambahan looping 1 .
System.out.print(himpunanA[i]+" ");
              }
          for( int i=1;i<=jumlahAnggotaB;i++){
              boolean adaSama = false;
              for(int j=1;j<=jumlahAnggotaA;j++){
                     if(himpunanB[i]==himpunanA[j])
                            adaSama=true;
pada method ini akan menampilkan nilai integer dari (himpunanA[i])
Jika nilai integer jumlah anggota didalam himpunan B sama dengan A Sedangkan jika nilai integer jumlah anggota didalam himpunan A sama dengan jumlah anggota didalam himpunan B maka dalam proses Boolean akan bernilai true dan akan mengeksekusi pengabungan dari nilai A U B sedangkan dalam proses Boolean akan bernilai false dan tidak dieksekusi

Pada listing selanjutnya sama saja logikanya secara garis besar dapat diwakilkan dengan logika diatas
       public static void main(String args[]){
              himpunanLA bilangan = new himpunanLA();
              bilangan.dataAnggota();
              bilangan.tampilAnggota();
              bilangan.himpunanGabungan();
              bilangan.himpunanIrisan();
              bilangan.himpunanSelisih();
       }

}
nah pada bagian segmen ini jadi listing ini akan memanggil data dari sub method : himpunan yang telah diinput .

Kamis, 18 November 2010

Arsitektur Komputer


Dalam bidang teknik komputer, arsitektur komputer adalah konsep perencanaan dan struktur pengoperasian dasar dari suatu sistem komputer. Arsitektur komputer ini merupakan rencana cetak-biru dan deskripsi fungsional dari kebutuhan bagian perangkat keras yang didesain (kecepatan proses dan sistem interkoneksinya). Dalam hal ini, implementasi perencanaan dari masing–masing bagian akan lebih difokuskan terutama, mengenai bagaimana CPU akan bekerja, dan mengenai cara pengaksesan data dan alamat dari dan ke memori cache, RAM, ROM, cakram keras, dll). Beberapa contoh dari arsitektur komputer ini adalah arsitektur Von Newmann, CISC, RISC, blue Gene, dll.
Arsitektur komputer juga dapat didefinisikan dan dikategorikan sebagai ilmu dan sekaligus seni mengenai cara interkoneksi komponen-komponen perangkat keras untuk dapat menciptakan sebuah komputer yang memenuhi kebutuhan fungsional, kinerja, dan target biayanya.
Arsitektur komputer ini paling tidak mengandung 3 sub-kategori:
  • Set Intruksi (ISA)
  • Aksitektur Mikro dari ISA, dan
  • Sistem desain dari seluruh komponen dalam perangkat keras komputer ini.

Seperti yang kita semua tahu tentang gerbang sirkuit elektronik digital yang berlaku untuk arsitektur komputer juga, ini bagian dari buku ini diabaikan di sinopsis disajikan di sini. Kita mulai dengan mengganggu dan prioritas sebagai berikut:

Interrupt prioritas: Transfer data antara CPU dari komputer dan I / O perangkat ini diprakarsai oleh CPU. Namun, CPU tidak dapat memulai transfer, kecuali jika perangkat sudah siap untuk berkomunikasi dengan CPU. Kesiapan pada perangkat dapat ditentukan dari mengganggu sinyal.

J prioritas mengganggu adalah sistem yang membentuk sebuah prioritas melalui berbagai sumber untuk menentukan kondisi yang akan dilayani pertama bila dua atau lebih permintaan simultaneously.Devices tiba tinggi dengan kecepatan transfer, contoh, disk magnetis adalah prioritas tinggi, lambat perangkat seperti keyboard mempunyai prioritas rendah.

Perangkat pemungutan: mendirikan prioritas interrupts bersamaan dapat dilakukan dengan perangkat lunak atau perangkat keras. J prosedur pemungutan pemungutan dikenal sebagai perangkat yang digunakan untuk mengidentifikasi prioritas utama oleh perangkat lunak sumber berarti. Prioritas utama yang diuji adalah sumber pertama, dan jika mengganggu sinyal yang aktif, kontrol cabang ke layanan rutin untuk sumber ini. Jika tidak, berikut adalah sumber prioritas rendah diuji dan sebagainya.

Mikro diprogram dan kontrol unit operasi:

Microprogramming merupakan metode kontrol unit desain di mana kontrol sinyal pilihan sequencing dan informasi yang tersimpan dalam RAM atau ROM yang disebut kontrol memori.

Diterjemahkan ke dalam virtual alamat alamat fisik dari komputer yang menggunakan memori virtual:

Hal ini dilakukan oleh pemetaan menggunakan alamat halaman. Fisik memori dirobohkan ke dalam kelompok yang sama disebut ukuran blok. Halaman merujuk ke kelompok ruang alamat yang sama ukurannya. Pemetaan ruang alamat dari ke ruang memori yang difasilitasi jika setiap alamat maya dianggap diwakili oleh 2 nos. - Alamat dan nomor halaman sesuai dengan halaman. Ketika program dimulai pelaksanaan, satu atau lebih halaman yang ditransfer ke memori utama dan halaman set meja untuk menunjukkan posisi mereka. Program ini dijalankan dari memori utama sampai upaya rujukan ke halaman yang masih dalam memori penolong. Kondisi ini dikenal sebagai halaman kesalahan. Kemudian pelaksanaan program ini dihentikan sementara sampai program ini dibawa ke dalam memori utama. Bila terjadi kesalahan di halaman virtual memori, ia menandakan bahwa halaman yang dirujuk oleh CPU tidak ada di dalam memori utama. Dengan demikian halaman baru sekarang penolong ditransfer dari memori ke memori utama. Jika memori utama sudah penuh, maka akan sangat diperlukan untuk menghapus halaman dari memori blok untuk memberikan ruang bagi sebuah halaman baru. Penggantian kebijakan ini akan digunakan untuk FIFO dan LRU. Sedangkan algoritma FIFO untuk memilih pengganti halaman yang telah lama di dalam memori waktu, dalam LRU, sedikit berbagi halaman adalah halaman dengan nilai count.

Asosiatif memori ---- apa yang digunakan dalam pemetaan alamat dalam cache memori sistem

Waktu yang diperlukan untuk menemukan item yang disimpan dalam memori dapat dikurangi secara besar jika data yang disimpan dapat diidentifikasi untuk akses oleh isi data diri daripada oleh alamat. Seperti unit memori diakses oleh konten disebut memori asosiatif atau CAM (content addressable memori). Asosiatif memori paralel dapat melakukan pencarian data oleh asosiasi. Hal ini lebih mahal daripada RAM. Asosiatif memori yang digunakan dalam aplikasi dimana cari waktu adalah penting dan harus sangat singkat.

Pemetaan asosiatif: asosiatif memori yang digunakan dalam alamat pemetaan dalam cache memori sistem. Asosiatif memori yang baik alamat toko dan konten (data) dari memori kata, jadi ini izin lokasi di cache untuk menyimpan setiap kata dari memori utama.

Kernel yang O.S

OS memiliki master program yang disebut supervisor atau lalu lintas controller atau kernel. Kernel adalah bagian dari OS yang kontrol yang lainnya, dan selalu berada dalam memori utama. Kernel menjalankan mesin utama dan melaksanakan program-program pengelolaan sumber daya utama. Dimulai pada komputer, kernel yang dimuat dalam memori dan kontrol dari mesin.

Fungsi yang loader ---------- bootstrap loader

Loader alamat toko waktu. It menghasilkan alamat pada saat penyimpanan sekunder dari penyimpanan ke dalam memori utama. Bootstrap loader loader adalah mutlak. Ini merupakan awal program yang dimuat ke memori pada saat booting.

Single pass assembler memproses sebuah program assembly

Dengan algoritma untuk satu pass assembler adalah sebagai berikut:

Pass satu

Langkah 1 ------- lokasi initialize counter ke nol
Langkah 2 -------- membaca baris kode sumber
Langkah 3 ------- menganalisis pernyataan

Proses terjemahan ------- tahap analisis dan sintesis

Analisa sumber teks + sintesis dari sumber = terjemahan dari teks sumber ke teks sasaran.

Direct Memory Access (DMA):

Mentransfer data antara perangkat penyimpanan yang cepat dan memori yang sering dibatasi oleh kecepatan CPU. Mengeluarkan CPU dari jalan dan membiarkan pinggiran mengelola perangkat memori bis langsung meningkatkan kecepatan transfer. Transfer ini adalah teknik diistilahkan sebagai DMA. Selama transfer DMA, CPU yang menganggur dan tidak memiliki kontrol dari memori bus.


 ALU
Arithmetic Logical Unit merupakan unit penalaran secara logic. ALU ini adalah merupakan Sirkuit CPU berkecepatan tinggi yang bertugas menghitung dan membandingkan. Angka-angka dikirim dari memori ke ALU untuk dikalkulasi dan kemudian dikirim kembali ke memori.

Jika CPU diasumsikan sebagai otaknya komputer, maka ada suatu alat lain di dalam CPU tersebut yang kenal dengan nama Arithmetic Logical Unit (ALU), ALU inilah yang berfikir untuk menjalankan perintah yang diberikan kepada CPU tersebut.

ALU sendiri merupakan suatu kesatuan alat yang terdiri dari berbagai komponen perangkat elektronika termasuk di dalamnya sekelompok transistor, yang dikenal dengan nama logic gate, dimana logic gate ini berfungsi untuk melaksanakan perintah dasar matematika dan operasi logika.

Kumpulan susunan dari logic gate inilah yang dapat melakukan perintah perhitungan matematika yang lebih komplit seperti perintah “add” untuk menambahkan bilangan, atau “devide” atau pembagian dari suatu bilangan. Selain perintah matematika yang lebih komplit, kumpulan dari logic gate ini juga mampu untuk melaksanakan perintah yang berhubungan dengan logika, seperti hasil perbandingan dua buah bilangan.

Instruksi yang dapat dilaksanakan oleh ALU disebut dengan instruction set. Perintah yang ada pada masing-masing CPU belum tentu sama, terutama CPU yang dibuat oleh pembuat yang berbeda, katakanlah misalnya perintah yang dilaksanakan oleh CPU buatan Intel belum tentu sama dengan CPU yang dibuat oleh Sun atau perusahaan pembuat mikroprosesor lainnya. Jika perintah yang dijalankan oleh suatu CPU dengan CPU lainnya adalah sama, maka pada level inilah suatu sistem dikatakan compatible.

Sehingga sebuah program atau perangkat lunak atau software yang dibuat berdasarkan perintah yang ada pada Intel tidak akan bisa dijalankan untuk semua jenis prosesor, kecuali untuk prosesor yang compatible dengannya.

Seperti halnya dalam bahasa yang digunakan oleh manusia, instruction set ini juga memiliki aturan bahasa yang bisa saja berbeda satu dengan lainnya. Bandingkanlah beda struktur bahasa Inggris dengan Indonesia, atau dengan bahasa lainnya, begitu juga dengan instruction set yang ada pada mesin, tergantung dimana lingkungan instruction set itu digunakan.

Rabu, 17 November 2010

Microsoft Kinect Jadi Bulan-bulanan Hacker

Kinect, perangkat tambahan untuk konsol game XBox 360, tidak hanya menarik perhatian konsumen. Hacker di berbagai belahan dunia pun geregatan untuk mengutak-atik mainan baru buatan Microsoft itu.
Teknologi yang diusung Kinect memang diakui keunggulannya. Bagaimana tidak, dengan perangkat ini orang dapat bermain game tanpa joystick dan tinggal menggerak-gerakkan anggota tubuhnya layaknya dalam film Minority Report. Sayangnya, Kinect hanya dirancang untuk bekerja di XBox 360. Inilah yang membuat para hacker tertarik untuk merekayasa agar Kinect bisa digunakan di perangkat lainnya tanpa dibatasi platform.
Bahkan sebuah perusahaan di New York, Adafruit Industries menawarkan hadiah 3000 dollar AS buat siapa saja yang pertama kali bisa membuat driver open source untuk Kinect agar bebas digunakan untuk apa saja. hector Martin dari Spanyol berhasil memenuhi tantangan ini, enam hari sejak Kinect diluncurkan 4 November 2010 lalu.
Martin berhasil mendemontrasikan penggunaan Kinect di laptopnya. Ia merewkam video saat Kinect digunakan untuk merekam bideo kualitas VGA dan saat tangannya digerakkan mendekati kamera terbentuk garis dengan warna berubah dari hijau ke merah. Uniknya, Martin tak punya XBox 360. Adafruit telah mengkonfirmasi kode yang dibuat Martin.
AlexP dari CodeLab dan NUI Group sebenarnya lebih dulu mendemokan driver Kinect untuk dipakai di Windows 7. Namun, hacker ini berharap lebih dengan membuka donasi hingga 10.000 dollar AS sehingga tidak mendapat hadiah Adafruit. Malah, ia hanya dapat 457 dollar AS yang kemudian didonasikan penuh ke Martin untuk melanjutkan proyek open source Kinect.
Hadirnya driver untuk Kinect yang bersifat open source memberi kesempatan para pengembang dan konusmen untuk memanfaatkan perangkat tersebut lebih banyak pilihan. Oliver Kreylos dari Universitas California, Davis, AS sudah memanfaatkannya untuk merekam video dalam format tiga dimensi (3D) dengan Kinect dari laptopnya. Kinect bahkan dilaporkan sudah bisa bekerja pada notebook denga Mac OSX.
Menanggapi aksi para hacker ini, juru bicara Microsoft seperti dilansir CNET menyatakan bahwa segala bentuk modifikasi terhadap perangkat buatannya tidak direkomendasikan karena penggunaan komponen hardware dan software telah dirancang agar perangkat tersebut bekerja stabil. Microsoft akan berupaya tersu meningkatkan kestabilan fungsinya dan mencegah penyalahgunaan perangkat buatannya oleh pihak lain.
Meski muncul resistansi dari Microsoft, nyatanya perangkat tersebut laku keras. Dalam 10 hari saja, sudah terjual satu juta unit dan diprediksi akan terjual hingga 5 juta unit di akhir tahun nanti. kalau dipikir-pikir, sukses Kinect seperti mengulang software Windows ya. Banyak dibajak dan tetap laku keras.

sumber : Kompas

Para Ahli Astronomi Temukan Lubang Hitam Baru


Washington (ANTARA/Reuters) - Satu ledakan bintang pada 30 tahun yang lalu di dekat galaksi diduga menciptakan lubang hitam baru, demikian laporan para ahli astronomi, Senin.
Pengamatan yang dilakukan melalui sinar infra mengatakan supernova yang dijuluki SN 1979C merupakan lubang hitam yang sedang terbentuk, ujar sebuah regu ahli astronomi yang berasal dari Amerika Serikat dan Eropa.
"Jika perkiraan kami benar, itu merupakan contoh terdekat bagi pengamatan penciptaan sebuah lubang hitam," ujar seorang ahli Astrofisika dari Harvard-Smithsonian Center di Massachusetts, Daniel Patnaude, yang memimpin penelitian itu.
Seorang ahli astronomi amatir dari Maryland, Gus Johnson, menemukan supernova pada 1979 di tepi sebuah galaksi yang bernama M100, kemudian para ahli astronomi lain meneliti hal tersebut setelah penemuannya. Cahaya dan sinar infra dari pecahan telah memakan waktu selama 50 juta tahun untuk menuju ke bumi dengan kecepatan cahaya sebesar 300.000 kilometer per-detik atau sekitar 10 triliun kilometer per-tahunnya.
Pusat Pengamatan Sinar Infra Chandra milik NASA, Badan Antariksa Eropa XMM-Newton, dan Pusat Pengamatan Rosat milik Jerman telah menyaksikan bahwa itu memancarkan sumber sinar infra stabil yang terang.
Analisis sinar infra mendukung ide bahwa benda yang diamati merupakan lubang hitam dan itu juga akan menarik masuk benda yang jatuh dari sebuah supernova atau mungkin dari bintang kembar, ujar para ahli astronomi.
Para ilmuwan percaya bahwa lubang hitam dapat tercipta melalui beberapa cara yang dalam hal ini karena sebuah bintang yang berukuran sekitar 20 kali massa dari Matahari yang akan menjadi supernova dan kemudian meledak menjadi beberapa benda yang padat yang menghisap benda-benda di sekitarnya kedalam inti lubang hitam itu.

sumber

http://id.news.yahoo.com/antr/20101116/ttc-para-ahli-astronomi-temukan-lubang-h-65082e6.html

Minggu, 14 November 2010

Rahasia dibalik Recycle bin

 Recycle bin adalah tempat sampah terakhir sebelum akhirnya data yang dihapus hilang dari komputer. Recycle bin diberikan dengan berbagai ketentuan standar dari Microsoft.
Antara lain, tidak dapat diganti namanya dan selalu terlihat sehingga dapat diakses siapa saja. Namun dengan sedikit trik pada registry, Anda dapat mengubah kedua hal tadi. Atau bila mau Anda juga dapat memberikan menu tambahan pada recycle bin Anda.

TIPS 1 :
Sembunyikan Recycle Bin Bila tidak suka keberadaan recyle bin pada desktop, Anda tidak dapat segera menghapusnya.
Karena ini adalah satu-satunya icon yang sulit untuk disembunyikan. Untuk itu, Anda harus melakukannya dalam registry editor.
Cara akses registry editor, ketik ‘regedit’ pada Start Menu, Run.
Lalu tekan OK. Lalu masuk ke HKEY_LOCAL_MACHINE/Software/Microsoft/Windows/CurrentVersion/Explorer/Dektop/NameSpace. Lalu hapus subkey {645FF040-5081-101B-9F08-00AA002F954E}. 

TIPS 2 :
Ganti Nama Recycle BinBila Anda tetap ingin menampilkan recycle bin,
tetapi tidak ingin tetap menggunakan nama ‘recycle bin’, maka Anda dapat dengan mudah menggantinya sesuai dengan yang diinginkan. Caranya pada registry editor,
carilah key HKEY_CLASSES_ROOT_CLSID/{645FF040-5081-101B-9F08-00AA002F954E}.
Kemudian ganda pada option ‘Default’ di sebelah kanan. Kemudian gantilah nama ‘Recycle Bin’ tersebut dengan nama yang Anda kehendaki.
Misalkan saja Anda menggantinya dengan nama ‘Tempat Sampah’, maka akan muncul nama ini di bawah icon recycle bin Anda. 



TIPS 3:


Munculkan Menu Rename Berkali-kali mengganti nama recycle bin dengan cara seperti pada langkah dua memang sangat merepotkan.
Jika ingin tidak repot setiap kali mengganti nama recycle bin,
munculkan saja opsi rename pada recycle bin tersebut.
Caranya pergi ke HKEY_CLASSES_ROOT_CLSID/{645FF040-5081-101B-9F08-0AA002F954E}/ShellFolder.
Kemudian klik ganda pada opsi Attributes yang ada di sebelah kanan.
Kemudian ganti nilai yang tertera dengan 0000 50 01 00 20, kemudian tekan OK.

TIPS 4:


Munculkan Menu Lain Langkah ketiga sebenarnya dapat juga Anda gunakan untuk menambahkan menu lain yang Anda ingin letakkan dalam recycle bin.
Yaitu, menu-menu yang biasanya muncul pada Windows Explorer Anda. Namun, hanya ada satu value data yang dapat Anda masukkan.
Dan setiap value data berisi satu atau lebih menu.
Oleh sebab itu, pilih saja menu yang dibutuhkan atau paling sering Anda gunakan. Untuk setiap value data, Anda dapat melihatnya pada tabel di atas.
Cara memasukkan value data ini sama dengan langkah ketiga.


TIPS 5:



Tambahkan Menu PribadiAnda juga dapat membuat menu khusus.
Caranya: pergi ke
HKEY_CLASSES_ROOT_CLSID/{645FF040-5081-101B-9F08-00AA002F954E}.
Lalu klik kanan pada folder tersebut, setelah itu pilih New, Key, kemudian berikan nama Key tersebut Shell.
Lalu pada folder yang beru juga buatlah key baru dan berikan nama aplikasi atau perintah yang diinginkan.
Pada key tersebut buat jugalah key baru dan beri nama ‘Command’.
Kemudian klik ganda pada opsi Default di sebelah kanan, dan masukkan path aplikasi atau file yang ingin Anda jalankan/buka.
Kemudian tekan OK.


TIPS 6:



Ganti Keterangan Info Anda dapat mengganti keterangan info ‘Contains the files and folders that you have deleted’ yang muncul setiap kali mouse Anda berada di atas folder recycle bin.
Cara menggantinya adalah sebagai berikut.
Masuklah ke dalam folder HKEY_CLASSES_ROOT_CLSID/{645FF040-5081-101B-9F08-00AA002F954E}.
Lalu hapus opsi InfoTip yang ada di sebelah kanan.
Setelah itu klik kanan lalu pilih New, String Value.
Masukan nama string value yang baru dengan ‘InfoTip’.
Kemudian klik ganda string baru tersebut lalu masukkan nama yang ingin Anda tampilkan. Lalu tekan OK.




TIPS 7:



Ganti Icon Recycle Bin Anda juga dapat mengganti icon recycle bin Anda dengan icon lain yang diinginkan.
Caranya tidak lagi menggunakan registry editor melainkan cukup dengan klik kanan pada desktop, Properties.
Setelah pilih halaman Desktop, lalu tekan tombol Customize Desktop.
Dalam halaman general, Anda dapat memilih icon mana saja yang akan diganti.
Setiap memilih icon yang dikehendaki tekan tombol Change Icon.
Jika ingin kembali ke pengaturan awal atau standar semula, tekan saja tombol Restore Default.

Silahkan mencoba ya ^^

Senin, 08 November 2010

Perintah-perintah DOS INTERNAL

DATE
( Berfungsi untuk melihat/mengisikan tanggal yang berlaku pada BIOS komputer )
Rumus : DATE ( mm – dd – year ) atau bulan – tanggal – tahun
Jika Anda menyetujui tanggal yang ditampilkan di layar monitor, maka Anda cukup menekan tombol Enter saja tanpa perlu mengisi.
DEL
( Berfungsi untuk menghapus suatu atau beberapa file sekaligus )
DEL adalah singkatan dari DELETE yang terjemahannya berarti menghapus.
Rumus : DEL [drive :] [path] [nama file]
Contoh penggunaan :
DEL TUGAS.DOC
menghapus file yang bernama TUGAS.DOC
DEL B:\*. DOC
menghapus semua file berekstension DOC pada drive B
DEL * . *
menghapus seluruh file yang terdapat pada drive atau direktori aktif.
Perintah dengan cara yang sama berlaku juga untuk perintah ERASE.
Perintah DEL tidak akan bisa dilaksanakan (menghasilkan pesan “Access denied”) apabila :
•    Type file telah dirubah menjadi Read-Only. Untuk memungkinkan bisa dihapus, rubahlah type file dengan menghapuskan Read-Only menjadi Archieve saja. Gunakan perintah external ATTRIB pada DOS, atau program-program utility seperti PCTools atau Norton Utility yang memiliki kemampuan menghapus file yang diproteksi dengan Read-Only.
•    Apabila didalam disket atau direktori yang dihapus masih terdapat sub-direktori, dan didalam sub-direktori tersebut masih terdapat file-file yang belum dihapus. Untuk menghapusnya, Anda harus memasuki masing-masing sub-direktori tersebut dan menghapus seluruh file-filenya. Atau gunakan perintah (external) DELTREE untuk menghapus suatu direktori berikut sub-sub direktori yang berada dibawahnya.
CLS
( Berfungsi untuk membersihkan tampilan pada layar monitor )
Rumus : CLS
COPY
( Berfungsi untuk membuat salinan suatu file atau beberapa file sekaligus )
Rumus : COPY [ drive sumber ] [ nama file ] [ drive tujuan ] [ nama file ]
Contoh penggunaan :
COPY A:FORMAT.COM B :>
menyalin file FORMAT.COM dari drive A ke drive B dengan nama yang sama.
COPY TUGAS.DOC LATIHAN.DOC
menyalin file TUGAS.DOC menjadi LATIHAN.DOC pada drive/direktori yang sama.
COPY CON
( Berfungsi untuk menuliskan data/pesan berupa karakter text.
Rumus : COPY CON [ Nama File.TXT ] [Enter]
Dalam menuliskan data/pesan text, berlaku ketentuan sebagai berikut :
•    Untuk berganti baris = Tekan Enter
•    Untuk Disimpan (SAVE) = Tekan F6 atau Ctrl Z lalu [Enter]
•    Untuk Batal Penyimpanan = Tekan Control C atau Break bersamaan.
•    Untuk melihat hasilnya, ketik TYPE [ nama file.TXT ] atau buatlah sebuah file batch.
Contoh : Berikut latihan untuk memberi identitas kepemilikan pada disket Anda. Silahkan dicoba diketik …!
COPY CON A:\NAMA (tekan Enter 2X)
(Tekan tombol Tab 4X) PERHATIAN (tekan Enter 2X)
Barang siapa yang menemukan disket ini, dimohon kesediaannya (tekan Enter)
untuk mengembalikannya kepada pemiliknya dibawah ini : (Enter 2X)
Nama : …….. (Tuliskan nama Anda disini) …………..
(tekan Enter) Kelas : …………. SMU 105 Jakarta
Atas kerjasamanya, saya ucapkan terima kasih. (tekan Enter 3X)
(Tekan tombol Tab 6X)
(Tulis nama Anda disini)
Tekan tombol F6 atau Ctrl Z. Lalu tekan Enter.
Jika Anda melakukannya dengan benar, maka akan muncul pesan : 1 files copied.
Berikut ini latihan membuat konfigurasi file batch :
COPY CON A:\MILIK.BAT   (tekan Enter)
@Echo off  (tekan Enter)
CLS<       (tekan Enter)
TYPE  A:\MILIK (tekan Enter)
Tekan tombol F6 atau Ctrl Z. Lalu tekan Enter.
Jika Anda melakukannya dengan benar, maka akan muncul pesan : 1 files copied.
Kini, setiap kali Anda mengetikkan A:\MILIK, maka akan ditampilkan identitas kepemilikkan disket.
Perintah COPY CON juga dapat mengubah komputer berfungsi seperti halnya mesin ketik dengan menambahkan syntax PRN dibelakang COPY CON. Kini setiap kalimat yang diketik akan langsung dicetak oleh printer setelah ditekan Enter. Untuk menormalkan kembali, tekan tombol F6 dan Enter.
DIR
( Memperlihatkan daftar isi dari suatu media penyimpanan )
Rumus : DIR [ drive : ] [ path ] [ filename ] [ syntax ]
[ drive : ] drive dimana isi media penyimpanan tersebut berada , misalnya DIR A:
[ path ] [ filename ] menyatakan direktori , dan / atau file yang ingin dilihat .
Contoh :
DIR A:\TUGAS
artinya perintah untuk menampilkan file-file yang terdapat pada sub direktori TUGAS.
DIR A:\*.DOC
artinya perintah untuk menampilkan file-file yang berekstension DOC saja.
Contoh-contoh diatas dapat juga menyertakan syntax.
Syntax :
1.    /P menampilkan daftar isi per layar.
2.    /W menampilkan daftar isi melebar ke kanan.
3.    /A menampilkan daftar isi file berikut atributnya :
o    /AD menampilkan direktori.
o    /AS menampilkan file-file sistem operasi.
o    /AR menampilkan file-file yang beratribut Read-Only.
o    /AH menampilkan file-file yang disembunyikan.
4.    /O menampilkan daftar isi file secara berurutan berdasarkan :
o    /ON berdasarkan nama-nama file yang ada.
o    /OE berdasarkan ektension file.
o    /OS berdasarkan besarnya size file.
o    /OD berdasarkan tanggal pembuatannya (yang terdahulu diutamakan)
.
Contoh :
DIR A:\TUGAS
artinya perintah untuk menampilkan file-file yang terdapat pada sub direktori TUGAS dan tampilannya berhenti per 1 layar sampai Anda menekan tombol apapun (kecuali Anda menekan tombol Esc)
.
DIR A:\*.DOC /OS
artinya perintah untuk menampilkan file-file yang berekstension DOC saja dengan urutan berdasarkan besar kecilnya file tersebut (size file paling kecil berada paling atas)
.
DIR /OD
artinya perintah menampilkan file-file berurutan berdasarkan tanggal pembuatannya.
PROMPT
( Berfungsi untuk merubah tampilan DOS prompt )
Rumus : PROMPT [ text ] [ special character ]
[ text ] Satu atau beberapa huruf yang akan muncul sebagai prompt DOS
[ special characters ]
•    $Q = untuk menampilkan simbol sama dengan ( = )
•    $$ = untuk menampilkan simbol dollar ( $ )
•    $T = untuk menampilkan waktu yang berlaku pada komputer Anda
•    $D = untuk menampilkan tanggal yang berlaku pada komputer Anda
•    $P = untuk menampilkan drive dan path yang berlaku ( :\ )
•    $N = untuk menampilkan drive yang berlaku
•    $G = untuk menampilkan simbol lebih besar ( > )
•    $L = untuk menampilkan simbol lebih kecil ( < )
•    $_ = untuk memberikan jarak / spasi 1 baris
Contoh penggunaan :
•    Ketik PROMPT $P$G maka tampilan prompt yang muncul di layar monitor A:\ >
•    Ketik PROMPT SMU Negeri 105 Jakarta $T$_$P$G
maka tampilan prompt di layar monitor Anda akan nampak seperti di bawah ini :
SMU Negeri 105 Jakarta Time : 9 : 30 : 27 a
A :\ >
REN
( Berfungsi untuk mengubah suatu nama file )
REN adalah singkatan dari RENAME yang terjemahannya berarti merubah nama. Yang harus diperhatikan ialah yang dirubah hanya nama file-nya saja, ekstension file tidak boleh dirubah….!
Rumus : REN [ drive : ] [ path ] [ nama file ] [ nama file baru ]
Contoh penggunaan :
REN TUGAS.DOC LATIHAN.DOC
artinya mengganti nama file TUGAS.DOC menjadi LATIHAN.DOC.
TIME
( Berfungsi untuk melihat / mengisikan waktu yang berlaku pada BIOS komputer )
Rumus : TIME ( Hour : minute : seconds ) atau Jam : Menit : Detik
Jika Anda menyetujui waktu yang tampak di layar Monitor, maka Anda hanya cukup menekan tombol Enter saja tanpa perlu mengisi.
TYPE
( Berfungsi untuk menampilan karakter text hanya pada file-file yang berekstension .TXT )
Rumus : TYPE [ nama file . TXT ]
VER
( Berfungsi untuk mengetahui versi DOS yang digunakan pada Komputer Anda )
Rumus : VER
Perintah-Perintah DOS: Perintah Internal
13th Jul 2007 Author: Administrator
Perintah-Perintah DOS: Perintah Internal
Perintah-perintah dalam DOS sangat sederhana, Cuma karena kurang tenar, maka kita tidak familiar dengan perintah-perintah tersebut sehingga merasa aneh, dan asing dengan perintah-perintah tersebut. Jika kita teliti dengan seksama, perintah-perintah tersebut sangatlah mudah.
Perintah-perintah DOS terdiri dari dua macam, yaitu perintah internal dan perintah eksternal:
Perintah internal: perintah yang dapat lengsung dijalankan dari komputer dan hanya dengan menggunakan bantuan dari file system saja tanpa harus menggunakan file-file tertentu untuk keperluan tertentu.
Perintah eksternal: perintah yang membutuhkan file-file tambahan untuk dapat dijalankan dismping harus menggunakan file system.
Anda masih bingung dengan perintah-perintah tersebut?, tentu saja, karena saya baru memberi definisinya saja. Berikut adalah contoh-contoh beberapa perintah internal:
•    dir
Perintah dir digunakan untuk mengetahui isi dari suatu direktori atau drive, contoh jika kita sedang aktif di ‘root’ (pangkal) drive a:, kita ketik dir maka akan ditampilkan isi dari drive a:
a:\>dir ¿ (enter)
•    cd
Perintah cd (change directory) digunakan untuk berpindah ke direktori yang lebih dalam/tinggi, direktori merupakan istilah folder di DOS, jadi di DOS, jika windows menamakan folder, maka DOS menamakan direktori.
Contoh jika kita memiliki direktori ketikan di drive d: maka ketika kita di drive d: dan mengetikan ‘cd ketikan’, maka kita akan aktif di direktori ketikan.
D:\> cd ketikan  ¿ (enter), menjadi
D:\ketikan>_
•    cd..
Perintah cd.. digunakan kebalikan dari perintah cd, jika kita ingin kembali ke d:\>_, kita ketikkan cd.. (enter)
D:\ketikan>cd.. ¿ (enter) menjadi
D:\>_
•    md
Perintah MD (make directory) digunakan untuk membuat direktori, atau di windows membuat folder, jika kita aktif di D:\ketikan>_ kita mengetik ‘md anto’, maka kita akan memiliki direktori anto pada d:\ketikan\
Contoh:
D:\ketikan\md anto ¿ (enter)
Untuk melihat gunakan perintah dir
•    rd
Perintah RD digunakan untuk menghapus direktori, syaratnya adalah, kita menghapus dari direktori sebelumnya dan kita pastikan direktori yang akan dihapus harus kosong, semisal kita akan menghapus direktori anto, maka kita jalankan perintah harus pada direktori ketikan
Contoh:
D:\ketikan>rd anto ¿ (enter)
Untuk melihat gunakan perintah dir
Perintah perintah internal lainnya masih banyak lagi dan akan dibahas mendatang, kita dapat menggunakan perintah help, atau dengan mengetikan parameter /? Untuk mengetahui lebih lanjut. Misal untuk mengetahui cara menggunakan dir dapat kita cari dengan mengetikkan dir /? Enter.
Selamat mencoba
Anto
YES
Perintah-perintah tingkat dasar:
Perintah-perintah tingkat dasar diperuntukkan bagi mereka yang masih dalam tahap belajar.
ATTRIB Perintah eksternal. Untuk melihat/mengubah atribut file
CLS Perintah internal. Untuk menghapus layar monitor
COPY Perintah internal. Untuk mengkopi file
DEL Perintah internal. Untuk menghapus file
DIR Perintah internal. Untuk melihat daftar file/folder di folder/direktori tertentu
MD Perintah internal. Untuk membuat direktori/folder baru
RD Perintah internal. Untuk menghapus folder (folder kosong)
REN Perintah internal. Untuk mengubah nama file/folder
TYPE Perintah internal. Untuk melihat isi file
Perintah dasar:
Perintah-perintah tingkat dasar diperuntukkan bagi mereka yang masih dalam tahap belajar.
ATTRIB Perintah eksternal. Untuk melihat/mengubah atribut file
CLS Perintah internal. Untuk menghapus layar monitor
COPY Perintah internal. Untuk mengkopi file
DEL Perintah internal. Untuk menghapus file
DIR Perintah internal. Untuk melihat daftar file/folder di folder/direktori tertentu
MD Perintah internal. Untuk membuat direktori/folder baru
RD Perintah internal. Untuk menghapus folder (folder kosong)
REN Perintah internal. Untuk mengubah nama file/folder
TYPE Perintah internal. Untuk melihat isi file
Perintah menengah:
Perintah-perintah tingkat menengah diperuntukkan bagi mereka yang mulai mempelajari langkah-langkah recovery ringan, seperti format/install ulang, bad sector recovery.
EDIT Perintah eksternal. Untuk mengedit file teks (interaktif)
FDISK Perintah eksternal. Untuk melihat/mengubah/membuat partisi harddisk
FORMAT Perintah eksternal. Untuk memformat disket/harddisk
MORE Untuk mencegah tampilan menggulung terus-menerus
SYS Eksternal apa internal ya? Yang jelas untuk membuat disket/harddisk jadi bootable
Perintah tingkat lanjut:
DEBUG Perintah eksternal. Untuk melihat/mengubah isi file dalam format heksadesimal
REG Perintah eksternal. Untuk melihat/mengubah/menghapus key/value registry
TASKKILL Perintah eksternal. Untuk menghentikan/membunuh proses yang sedang berlangsung
TASKLIST Perintah eksternal. Untuk melihat daftar proses yang sedang berlangsung
Perintah-perintah BATCH FILE
@
ECHO
REM
Program-program Utilities
QuickBASIC, PASCAL, TURBO C (bahasa pemrograman, program untuk membuat program)Partition Magic for DOS (program partisi yang lebih mudah digunakan dibandingkan FDISK
MELIHAT DAFTAR FILE: “DIR”
Perintah “DIR” berfungsi untuk melihat daftar file/folder yang berada di direktori atau folder tertentu. Sebenarnya perintah DIR mempunyai banyak sekali parameter perintah yang dapat kita gunakan untuk membatasi daftar file/folder yang kita inginkan. Di antaranya, parameter-parameter ini dapat kita gunakan untuk menentukan file, folder atau file dan folder yang ingin kita lihat di direktori/folder tertentu, kemudian menentukan apakah kita akan menampilkan file-file yang hidden atau tidak, kemudian mengurutkan berdasarkan nama, tanggal, ukuran, dan sebagainya. Untuk mengetahui daftar parameter dan cara penggunaannya, ketikkan “DIR /?” kemudian tekan Enter.
Melihat daftar file/folder dalam direktori/folder tertentu DIR (tanpa parameter)
Melihat daftar file saja DIR /a-d
Melihat daftar folder saja DIR /ad
Melihat daftar file yang tersembunyi DIR /a-dh
Melihat daftar folder yang tersembunyi DIR /adh
Melihat daftar file/folder yang tersembunyi DIR /ah
MENGETAHUI/MENGUBAH ATRIBUT FILE: “ATTRIB”
Untuk mengetahui daftar parameter untuk perintah “ATTRIB”, ketikkan “ATTRIB /?”.
Melihat attribut file/folder
Format umum: ATTRIB namafile
Contoh: ATTRIB readme.txt
Untuk melihat attribut dari beberapa file/folder, gunakan wildcards character (*) pada namafile.
Mengubah attribut file/folder
ATTRIB daftaratribut namafile
Daftar atribut yang valid: H, R, S
Gunakan tanda ‘-’ di depan kode attribut untuk menonaktifkan atribut tertentu, gunakan tanda ‘+’ untuk mengaktifkan atribut tertentu.
Contoh pemakaian:
Mengubah atribut file README.TXT menjadi hidden
ATTRIB +h README.TXT
Mengaktifkan atribut hidden sekaligus atribut system pada file README.TXT
ATTRIB +h +s README.TXT
Menonaktifkan attribut hidden, read-only dan system pada semua file dalam direktori aktif (current directory). Kombinasi atribut ini dapat digunakan untuk memunculkan kembali file-file yang ‘disembunyikan’, misalnya sebagai dampak infeksi virus ke komputer:
ATTRIB -h -r -s *.*
Perintah Jenis perintah Keterangan BREAK Internal Mengeset pengecekan penekanan tombol Ctrl+C atau menggagalkannya. CD atau CHDIR Internal Mengganti direktori aktif ke direktori lainnya yang ditentukan dalam parameter. Jika dijalankan tanpa parameter, maka perintah ini akan menampilkan lokasi di mana direktori aktif berada. CHCP Internal Jika dijalankan tanpa parameter, perintah ini akan menampilkan code page (kumpulan karakter) dalam bentuk angka yang sedang digunakan. Perintah ini juga dapat digunakan untuk mengganti code page untuk semua perangkat yang mendukung pergantian kumpulan karakter. CLS Internal Membersihkan layar dan menempatkan kursor pada pojok kiri layar. Perintah ini tidak memiliki parameter. COPY Internal Menyalin satu atau beberapa berkas dari satu lokasi ke lokasi lainnya yang ditentukan. Perintah ini memiliki dua parameter, yakni parameter sumber berkas dan tujuan ke mana berkas akan disalin. CTTY Internal Perintah ini akan mengganti perangkat terminal (terminal device/tty) yang digunakan untuk mengontrol komputer. DATE Internal Perintah ini akan menampilkan tanggal saat ini. Perintah ini juga dapat mengeset tanggal komputer. DEL atau ERASE Internal Menghapus berkas yang ditentukan dalam parameter. Parameter dapat berupa nama berkas atau beberapa nama berkas yang disusun menggunakan karakter wildcard. DIR Internal Jika digunakan tanpa parameter, perintah ini dapat menampilkan daftar berkas-berkas dan subdirektori yang terdapat di dalam direktori aktif. Berkas ini memiliki satu parameter, yakni lokasi direktori di mana hendak menampilkan daftar isi direktori. EXIT Internal Keluar dari shell COMMAND.COM sekunder dan kembali lagi kepada COMMAND.COM primer. LH atau LOADHIGH Internal Memuat sebuah program ke upper memory block. LOCK Internal Perintah ini mengizinkan akses langsung terhadap hard disk. Perintah ini hanya dimiliki oleh MS-DOS dalam Windows 95/98. MKDIR atau MD Internal Membuat sebuah direktori dalam direktori aktif. PATH Internal Menentukan di mana MS-DOS harus mencari berkas-berkas yang dapat dieksekusi sebagai program. PROMPT Internal Mengubah tampilan command prompt MS-DOS. RMDIR atau RD Internal Menghapus sebuah direktori kosong. Akan gagal bila direktori tersebut mengandung berkas atau subdirektori lainnya. Gunakan perintah eksternal DELTREE untuk menghapus total sebuah tree direktori. REN atau RENAME Internal Mengubah nama sebuah atau beberapa berkas (dengan menggunakan karakter wildcard). SET Internal Menampilkan, menghapus atau mengeset variabel-variabel lingkungan. Umumnya, perintah ini dimasukkan ke dalam berkas AUTOEXEC.BAT. TIME Internal Menampilkan atau mengeset waktu saat ini. TYPE Internal Menampilkan isi dari sebuah berkas (dalam bentuk teks) ke dalam standard output. UNLOCK Internal Menonaktifkan akses hard disk secara langsung. Perintah ini hanya dimiliki oleh MS-DOS dalam Windows 95/98. VER Internal Menampilkan versi sistem operasi yang digunakan. VERIFY Internal Menyuruh sistem operasi agar melakukan verifikasi bahwa berkas-berkas yang ditulis ke dalam media penyimpanan telah sempurna ditulis, dan menampilkan status verifikasi. Perintah ini secara default dinyalakan oleh MS-DOS.
Menampilkan nama label dari sebuah volume atau partisi.