Cara Membuat Koneksi Xampp di Php dan Mysqli Beserta Contohnya
Cara Membuat Koneksi Xampp di Php dan Mysqli Beserta Contohnya
Hello kawan kali ini saya akan menjelaskan bagaimana cara membuat koneksi php dan mysqli
sebelum itu anda harus tau dulu mysqli itu apa?
MYSQL adalah sebuah perangkat lunak sistem manajemen basis data SQL (bahasa Inggris: database management system) atau DBMS yang multithread, multi-user, dengan sekitar 6 juta instalasi di seluruh dunia. MySQL AB membuat MySQL tersedia sebagai perangkat lunak gratis dibawah lisensi GNU General Public License (GPL), tetapi mereka juga menjual dibawah lisensi komersial untuk kasus-kasus di mana penggunaannya tidak cocok dengan penggunaan GPL.(wikipedia)
MySqli dalam system Prosedural
MySQL Peningkatan Extension (MySQLi) menyediakan antarmuka prosedural serta Antarmuka Object Oriented.
Dalam artikel ini kita akan melihat ke beberapa fungsi MySQLi Prosedural umum.
mysqli_connect ()
Fungsi ini digunakan untuk menghubungkan ke
MySQL. Sebelum melakukan setiap operasi
database, Anda harus terhubung ke MySQL.
contoh code :
$link = mysqli_connect('localhost', 'root','password ', nama_database');
Untuk mencoba sebuah mysqli_connect_error(),
menghentikan MySQL server dan panggilan untuk
mysqli_connect(). Jika Anda telah mengaktifkan
kesalahan PHP, Anda akan melihat kesalahan yang
mencakup informasi seperti di disamping ini.
mysqli_connect_error() akan mengembalikan pesan
yang sama.
CONTOH 1:
<?php
$link = @mysqli_connect('localhost', 'root', '', 'test');
if (mysqli_connect_error()) {
echo 'database tidak terkoneksi';
}
// anda mulai membuat query di sini
?>
CONTOH 2:
<?php
$link = @mysqli_connect('localhost', 'root', '', 'test');
if($link){
echo 'database sukses koneksi';
}
else{
echo 'database tidak terkoneksi';
}
// anda mulai membuat query di sini
mysqli_select_db()
Untuk menambah database atau ingin
menggunakan lebih dari satu database, anda
dapat menggunakan perintah yg mysql yang
lama. Seperti contoh disamping menggunakan
dua database yaitu database ‘test’ dan
database ‘test1’.
CONTOH :
<?php
$link = @mysqli_connect('localhost', 'root', '', 'test');
if ($link){
echo 'test DB terkoneksi ';
}
$db2=mysqli_select_db($link, 'test1');
if ($db2){
echo 'DAN db2 terkoneksi';
}
?>
mysqli_query ()
Ini adalah fungsi yang digunakan untuk
mengeksekusi query MySQL. Menampilkan
hasil set MySQL (resource) yang dapat
digunakan dalam fungsi seperti
mysqli_fetch_array ().
CONTOH :
<?php
$link = @mysqli_connect('localhost', 'root', '', 'test');
$query = "SELECT * FROM siswa";
$hasil= mysqli_query($link, $query);
// display result di sini
}
mysqli_close($link);
?>
mysqli_fetch_array ()
Fungsi ini digunakan untuk membaca
data dari hasil set MySQL (dikembalikan
oleh mysqli_query a ()). Bunyinya dan
mengembalikan satu baris data sebagai
array dan kemudian pindah pointer ke
baris berikutnya. Ketika tidak ada lagi
baris untuk kembali, ia mengembalikan
NULL. Karena perilaku ini, itu sering
digunakan dengan Sementara Loop
sebagai berikut.
CONTOH :
<?php
$link = @mysqli_connect('localhost', 'root', '', 'test');
$query = "SELECT * FROM siswa";
$hasil= mysqli_query($link, $query);
while($row = mysqli_fetch_array($hasil)){
echo $row[1];
}
mysqli_close($link);
?>
Dalam tutorial edisi WSOK selanjutnya ini akan dijelaskan kegunaan dari 4 (empat) fungsi yaitu
mysql_fetch_array(),
mysql_fetch_assoc(),
mysql_fetch_object() dan
mysql_fetch_row().
Sekian penjelasan saya tentang membuat koneksi dengan mysqli
Mohon jika kurang jelas sertakan komentar di bawah
TERIMAKASIH
Cara Membuat Sourcode Get Post dan Session Pada PHP dan Mysql
Cara Membuat Metode Get Post dan Session Pada PHP dan Mysql
Metode $_GET
Dalam artikel ini akan dijelaskan, bagaimana menggunakan $_GET fungsi dalam PHP.
Dalam PHP, dua fungsi yang tersedia $ _GET() dan $ _POST() untuk mengirimkan nilai
dari satu halaman ke halaman lain, fungsi ini digunakan untuk mendapatkan nilai-nilai
yang diisi oleh pengguna seperti pendaftaran pengguna atau form login dll.
Fungsi $_GET digunakan untuk mengumpulkan nilai dari bentuk dikirim dengan method
= "GET". Mari kita lihat cara menggunakan $_GET fungsi dalam PHP.
Example:
"form.html" file berisi kode berikut.
<html>
<head>
<title> Get Methods</title>
</head>
<body>
<form action="Get.php" method="GET">
Nama <input type="text" name ="nama"/> <p>
Umur <input type="text" name="umur"/> <p>
<input type="submit" value="Submit"/>
</form>
</body>
</html>
"Get.php" file berisi kode berikut.
<html>
<head>
<title> Get Methods</title>
</head>
<body>
<?php
echo "Welcome :".$_GET['nama']."</br>";
echo "you are ". $_GET['umur']." tahun";
?>
</body>
</html>
Outputnya =
Sekarang Beralih Ke Metode $_POST
$ _POST digunakan untuk mengumpulkan nilai dari form untuk dikirim dengan
method = "POST". Informasi yang dikirim tidak terlihat di URL. Memiliki batas 8MB informasi untuk
mengirim.
Mari kita memiliki contoh, bagaimana mengumpulkan informasi dari bentuk dengan bantuan metode 'post'.
CONTOH :
File 1. form.html
<html>
<body>
<form action="Post.php" method="POST">
Nama <input type="text" name ="nama"/> <p>
Umur <input type="text" name="umur"/> <p>
<input type="submit" value="Submit"/>
</form>
</body>
</html>
File 2. Post.php
<?php
echo "Hallo ". $_POST['nama']."</br>";
echo "Kamu ". $_POST['umur']."tahun";
?>
APA PERBEDAAN UMUM Get Dan Post?
Informasi yang dikirim dari formulir dengan metode POST
tidak terlihat oleh orang lain
Informasi yang dikirim dari sebuah form dengan metode GET
dapat dilihat oleh semua orang (akan ditampilkan dalam URL)
Contoh Session :
Mari kita memiliki contoh untuk menunjukkan tampilan halaman counter pada setiap kunjungan
pengguna di halaman tersebut.
simpan dengan apapun.php
<?php
// Start Session
session_start();
// check session value has been set or not
if(isset ($_SESSION['PageView']))
{
// increment counter by 1 if session value is already set
$_SESSION['PageView'] = $_SESSION['PageView']+ 1 ;
}
else
{
// if session value not set, then value set by 1 in session variable
$_SESSION['PageView'] = $_SESSION['PageView']+1 ;
}
?>
selanjutnya
simpan dengan nama sesion.php
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>PHP Session</title>
</head>
<body>
<div id ="Container">
<h1> Test Session</h1>
<?php
// menampilkan berapa kali halaman dibuka
echo 'Total halaman ini dibuka pengunjung : '.$_SESSION['PageView'];
?>
</div>
</body>
</html>
Di sini, halaman yang dilihat dua kali sehingga jumlah pengunjung di halaman saat ini ditampilkan 3.
Destroying Session:
Pada dasarnya ada dua fungsi yang untuk menghancurkan Session, pertama adalah unset() dan kedua
adalah session_destroy().
unset() adalah fungsi yang digunakan untuk membebaskan variabel sesi yang ditentukan.
Example:
<?php
// Start Session
session_start();
// cek nilai session apakah sudah di set atau tidak.
$_SESSION['TestUnset'] ="Set";
?>
selanjutnya
simpan dengan nama contener.php
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<div id ="Container">
<h1> session page testing </h1>
<?php
echo 'Session Value : '.$_SESSION['TestUnset']."</br>";
unset ($_SESSION['TestUnset']);
echo 'Session Destroyed'."</br>";
echo 'Now Session sudah di unset : '.$_SESSION['TestUnset'];
?>
</div>
</body>
</html>
Saya harap anda bisa berkomentar di bawah.
KOMENTAR anda sangat bermanfaat bagi saya karna saya menjadi tau apa ada yang masih salah.
TERIMAKASIH.
SEMOGA BERMANFAAT YA
Contoh Cara Membuat Fungsi Array Pada Pemrograman PHP dan MySql
sebelum kita memulai penjelasan kita harus tau dulu Apa sih Array Itu?
Array adalah kumpulan data variabel yang
dapat menampung lebih dari satu nilai.
Nilai dari Array berurutan dengan niai pertama adalah 0
membuat suatu program tertentu misalnya program inventory pasti
akan langsung duduk di depan komputer *dan* dijamin pasti
kebingungan musti ngapain dulu :)) Solusinya adalah..... Jangan
langsung duduk di depan komputer untuk langsung coding... tapi mulai
dengan mendefinisikan 5W +1H, dari aplikasi yang sedang kita buat.
Kedengarannya seperti sedang membuat skripsi, namun yakinlah
langkah ini salah satu tujuannya adalah agar proyek yang sedang kita
kerjakan tidak sampai salah arah...
Cara Cara membuat array pada pemrograman php dengan mudah :
Cara 1. Menggunakan fungsi array ()
Sintaks :
$variabel=array(array1, array2, …dst.);
Array dibuat Dengan cara di atas memiliki angka indeks otomatis
dimulai dari 0 dan meningkat sebesar 1 untuk nilai berikutnya.
Jadi, nilai pertama "Januari" memiliki indeks angka 0, selanjutnya
satu "Februari" memiliki 1, dan seterusnya.
Contoh
<?php
$bulan=array("Januari", "Feb
ruari", "Maret" , "April" , "Mei"
, "Juni" , "Juli" , "Agustus" ,
"September" , "Oktober" ,
"November" , "Desember");
?>
Cara 2 Cara lain short array
Sintaks :
array_name = [
key1 => nilai1,
key2 => nilai2,
---
];
PHP 5.4 telah memperkenalkan sintaks array pendek.
Sekarang, array () dapat ditulis sebagai []. Jika kita
menulis contoh sebelumnya menggunakan identifier [].
Contoh
<? php
$bulan = [
0 => "Januari",
1 => "Februari",
2 => "Maret",
] ;
?>
Untuk menghapus elemen array atau seluruh array,
unset () fungsi dapat digunakan. Misal : anda ingin
menampilkan hasil yg sudah di unset, maka hasilnya
error :
<?php
$car = array("Ferarry", "Hyundai", "Toyota");
unset($car[0]);
/* Array element adalah Ferarry, jika nekat
meng-eho setelah diunset maka hasil error.
*/
echo $car[0];
?>
Contoh
<?php
$car = array("Ferarry",
"Hyundai", "Toyota");
unset($car[0]);
/* Array element
sebelumnya ferrary setelah
di unset maka posisi diambil
Hyunday */
echo $car[1];
?>
4. Array Asosiatif (multidimensi)
Untuk menghapus elemen array atau seluruh array,
unset () fungsi dapat digunakan. Misal : anda ingin
menampilkan hasil yg sudah di unset, maka hasilnya
error :
<?php
$car = array("Ferarry", "Hyundai", "Toyota");
unset($car[0]);
/* Array element adalah Ferarry, jika nekat
meng-eho setelah diunset maka hasil error.
*/
echo $car[0];
?>
Nomor Sejauh ini, Anda telah melihat digunakan
sebagai indeks / index. Tapi key sekarang berupa
string.
Ketika kunci dari sebuah array merupakan array
lain itu disebut array multidimensi. Jika seperti
array di atas setiap tombol mewakili satu nilai
maka pengertiannya, yaitu array satu dimensi.
Array pada contoh di atas adalah 1-dimensi.
Ketika kunci dari sebuah array merupakan
array lain itu disebut array multidimensi.. Mari kita
lihat contoh di samping ini:
Contoh
<?php
$teman = Array(
array(
"nama" => "Ari",
"umur" => 30,
"minat" => "PHP"
),
array(
"nama" => "Eksa",
"age" => 25,
"minat" => "Javascript"
),
);
foreach ($teman as $test) {
/*
Untuk setiap iterasi, $c mendapat
$teman (array asosiatif)
*/
while (list($k, $v) = each($test)) {
/* masing-masing ($c) mendapatkan
Element f $c (kunci nilai koresponden)
*/
echo "$k : $v <br>";
}
}
?>
maka hasilnya =
nama : Ari
umur : 30
minat : PHP
nama : Eksa
age : 25
minat : Javascript
Nah mungkin penjelasan saya itu saja jika ada kurang dan lebihnya atas penjelasan saya ini mohon komentar di bawah agar bisa menambah wawasan ilmu bagi saya dan anda sekalian.
Sekian dan TERIMAKASIH telah berkunjung ke blog saya.
Nah mungkin penjelasan saya itu saja jika ada kurang dan lebihnya atas penjelasan saya ini mohon komentar di bawah agar bisa menambah wawasan ilmu bagi saya dan anda sekalian.
Sekian dan TERIMAKASIH telah berkunjung ke blog saya.
Cara Internet Gratis Selamanya Menggunakan Mode Pesawat 100% Ampuh
Cara Internet Gratis Selamanya Menggunakan Mode Pesawat
Untuk bisa mengkases internet, terutama lewat smartphone, dibutuhkan kuota internet. Kuota internet ini biasanya sudah disediakan oleh tiap-tiap operator. Besar kuota dan harganya berbeda-beda, tergantung kebijakan tiap operator. Namun, rata-rata kini masyarakat harus mengeluarkan uang sekitar 30.000 hingga 100.000 rupiah per bulannya untuk membeli kuota internet.
Baru bokek dan gak ada anggaran buat beli kuota? Gak usah sedih, kamu bisa kok internetan gratis dengan berbagai cara. Jangan salah, selain pake gratisan Wi-Fi di tempat-tempat umum, masih banyak cara internet gratis all operator tanpa kuota. Jadi kamu gak harus melulu mengandalkan Wi-Fi kalau pas gak ada kuota. Mau tau caranya? Simak deh di bawah ini.
Cara Internet Gratis Dengan Mode Pesawat
Mode pesawat atau airplane mode adalah salah satu fitur wajib yang ada di ponsel Android. Dengan fitur ini, kamu tetap bisa main HP di dalam pesawat, meski tidak bisa telpon dan akses internet. Tapi kan lumayan, bisa main game atau kepo-kepo galeri selama penerbangan.
Nah, taukah kamu kalau mode pesawat ini bisa dimanfaatkan untuk internetan gratis? Trik ini bisa dilakukan pada semua operator Indonesia. Sudah banyak orang yang pakai trik ini dan berhasil sih internetan gratis. Makanya, gak ada salahnya dicoba. Ikuti step-stepnya:
1. Hidupkan data internet pada ponsel Android kamu (jangan pakai Wi-Fi)
2. Aktifkan mode pesawat/airplane mode
3. Setelah mode pesawat aktif, masuk ke dial number lalu ketik *#*#4636#*#* dan akan muncullah informasi ponsel kamu.
4. Ada tulisan “informasi telepon” pada menu paling atas, tekan tulisan tersebut
5. Scroll ke bawah dan temukan tulisan “Hidupkan Radio”, jika sudah ketemu, klik tulisan tersebut
6. Setelah kamu klik, otomatis data internet kamu akan aktif tapi kamu masih berada di mode pesawat
7. Dengan ini kamu bisa internetan gratis sepuasnya dan kuota kamu gak akan berkurang
Kurang LEBIH seperti itulah gambaran cara menggunakan internet gratis dengan mode pesawat
Sekian Dan Terimakasih
Cara Membuat Kalkulator Tampilan GUI JTextfield dan JButton Pada Pemrograman Java
Cara Membuat Kalkulator Tampilan JTextfield dan JButton Pada Pemrograman Java
Kali ini saya akan menjelaskan bagaimana cara membuat jtextfield dan jbutton pada pemrograman java
nah jika anda belum tau apa itu java sdk dan Komponen GUI lainnya maka penjelasan dibawah ini akan membantu anda
Abstract Windowing Toolkit (AWT) vs. Swing
The Java Foundation Class (JFC), merupakan bagian penting dari Java SDK, yang termasuk dalam koleksi dari API dimana dapat mempermudah pengembangan aplikasi JAVA GUI. JFC termasuk diantara 5 bagian utama dari API yaitu AWT dan Swing. Tiga bagian yang lainnya dari API adalah Java2D, Accessibility, dan Drag and Drop. Semua itu membantu pengembang dalam mendesain dan mengimplementasikan aplikasi visual yang lebih baik.
AWT dan Swing menyediakan komponen GUI yang dapat digunakan dalam membuat aplikasi Java dan Applet. Tidak seperti beberapa komponen AWT yang menggunakan native code, keseluruhan Swing ditulis menggunakan bahasa pemrograman Java. Swing menyediakan implementasi platform-independent dimana aplikasi yang dikembangkan dengan platform yang berbeda dapat memiliki tampilan yang sama. Begitu juga dengan AWT menjamin tampilan look and feel pada aplikasi yang dijalankan pada dua mesin yang berbeda menjadi terlihat sama. Swing API dibangun dari beberapa API yang mengimplementasikan beberapa jenis bagian dari AWT. Kesimpulannya, komponen AWT dapat digunakan bersama komponen Swing.
1. JTextField
JTextField adalah komponen GUI yang biasa digunakan untuk memasukkan data dengan mengetik dari keyboard. Kode program dibawah ini adalah contoh untuk membuat JTextField :
sourcode program jtextfield seperti di bawah ini
import javax.swing.*;
public class TampilTextField extends JFrame{
private JPanel panelku = new JPanel();
private static JTextField TxtNama = new JTextField();
TampilTextField(){ super("Membuat TextField");
panelku.setLayout(null);
setSize(350,200);
setDefaultCloseOperation(EXIT_ON_CLOSE);
TxtNama.setBounds(60,20,160,25);
panelku.add(TxtNama);
getContentPane().add(panelku);
setVisible(true);
}
public static void main(String args[]){
TampilTextField frameku = new TampilTextField();
}
}
simpan dengan nama.java
Nah jika sudah di copy maka tampilannya seperti di bawah ini :
selanjutnya
2. cara membuat tampilan GUI JButton
JButton
JButton digunakan untuk membuat sebuah tombol yang berfungsi untuk menerima input dari user berupa klik menggunakan mouse atau tombol enter dari keyboard.
Contoh program untuk menampilkan JButton adalah sebagai berikut :
import javax.swing.*;
public class TampilTombol extends JFrame{
private JPanel panelku = new JPanel();
private static JButton Tombol = new JButton("Tombol");
TampilTombol(){
super("Membuat Tombol");
panelku.setLayout(null);
setSize(350,200);
setDefaultCloseOperation(EXIT_ON_CLOSE);
Tombol.setBounds(130,90,80,25);
panelku.add(Tombol);
getContentPane().add(panelku);
setVisible(true);
}
public static void main(String args[]){
TampilTombol frameku = new TampilTombol(); //Tombol.setText("sffasf");
}
}
Tampilannya
3. JComboBox
JComboBox merupakan sebuah kelas pada swing yang berguna untuk membuat sebuah ComboBox. ComboBox biasanya digunakan untuk menampilkan daftar item sebagai pilihan untuk user. Berikut ini adalah kode program untuk menampilkan JComboBox :
import javax.swing.*;
public class TampilComboBox extends JFrame{
final static String Pilihan[] = {"Pilihan ke-1","Pilihan ke-2", "Pilihan ke-3"};
private JPanel panelku = new JPanel();
private static JComboBox ComboBox = new JComboBox(Pilihan);
TampilComboBox(){
super("Membuat ComboBox");
panelku.setLayout(null);
setSize(350,200);
setDefaultCloseOperation(EXIT_ON_CLOSE);
ComboBox.setBounds(90,70,150,25);
panelku.add(ComboBox);
getContentPane().add(panelku);
setVisible(true);
}
public static void main(String args[]){
TampilComboBox frameku = new TampilComboBox();
ComboBox.addItem("Pilihan Tambahan"); ComboBox.removeItem("Pilihan ke-2");
}
}
tampilannya :
4. Contoh Aplikasi Kalkulator Sederhana
Berikut ini adalah aplikasi kalkulator sederhana yang terdiri dari tombol angka 1, angka 2, tambah dan sama dengan :
import javax.swing.*;
import java.awt.event.*;
import java.awt.*;
public class Kalkulatorku extends JFrame{
private static JTextField tampilanTextField = new JTextField();
private static String operant1 = "";
private static String operant2 = "";
private static String operatorDipilih = "";
private static boolean setelahOperator = false;
private JButton tombol1 = new JButton("1");
private JButton tombol2 = new JButton("2");
private JButton tombolTambah = new JButton("+");
private JButton tombolSamaDengan = new JButton("=");
private JPanel panelku = new JPanel();
Dimension dimensi = Toolkit.getDefaultToolkit().getScreenSize();
private int Jml=1; Kalkulatorku(){ super("Aplikasi Kalkulatorku");
panelku.setLayout(null);
setSize(350,200);
setLocation(dimensi.width/2-getWidth()/2,dimensi.height/2-getHeight()/2);
setDefaultCloseOperation(EXIT_ON_CLOSE); /* Menambah TextField pada koordinat (X,Y,Lebar,Tinggi) */
tampilanTextField.setHorizontalAlignment(javax.swing.JTextField.RIGHT);
tampilanTextField.setEditable(false);
tampilanTextField.setBounds(55,20,200,25); /* Menambah Button pada koordinat (X,Y,Lebar,Tinggi) */
tombol1.setBounds(50,90,50,25);
tombol2.setBounds(110,90,50,25);
tombolTambah.setBounds(180,90,50,25);
tombolSamaDengan.setBounds(240,90,50,25); /* Menambahkan Action Listener pada button */
tombol1.addActionListener(new TombolHandler());
tombol2.addActionListener(new TombolHandler());
tombolTambah.addActionListener(new TombolHandler());
tombolSamaDengan.addActionListener(new TombolHandler()); /* Menambahakan TextField pada panel */
panelku.add(tampilanTextField); /* Menambahakan button pada panel */
panelku.add(tombol1);
panelku.add(tombol2);
panelku.add(tombolTambah);
panelku.add(tombolSamaDengan); /* Menambahakan panel pada frame */
getContentPane().add(panelku);
setVisible(true);
}
private class TombolHandler implements ActionListener {
public void actionPerformed(ActionEvent e){
JButton tombol = (JButton)e.getSource();
if (tombol.getText().equals("1")) {
if (setelahOperator) {
tampilanTextField.setText("1");
} else {
tampilanTextField.setText(tampilanTextField.getText()+"1");
} setelahOperator = false;
} else if (tombol.getText().equals("2"))
{ if (setelahOperator)
{ tampilanTextField.setText("2");
} else { tampilanTextField.setText(tampilanTextField.getText()+"2");
} setelahOperator = false;
} else if (tombol.getText().equals("+"))
{ operant1 = tampilanTextField.getText();
operatorDipilih = "+"; setelahOperator = true;
} else if (tombol.getText().equals("="))
{ operant2 = tampilanTextField.getText();
double operantPertama = 0;
double operantKedua = 0; try
{ operantPertama = Double.parseDouble(operant1);
} catch (Exception ex) { } try { operantKedua = Double.parseDouble(operant2); }
catch (Exception ex) { } if (operatorDipilih == "+")
{ tampilanTextField.setText(Double.toString(operantPertama+operantKedua));
}
}
}
} public static void main(String args[]){ Kalkulatorku kalkulator = new Kalkulatorku();
}
}
tampilan kalkulator sederhana menggunakan java
sekian postingan dari saya kurang lebihnya anda bisa reques program yang kalian inginkan dengan berkomentar di bawah ini :
Terimakasih
Ebook Cara Membuat Aplikasi Android Sederhana Menggunakan Eclips Atau Android Studio
Ebook Cara Membuat Aplikasi Android Sederhana Menggunakan Eclips Atau Androit Studio
Tidak perlu khawatir bagi Anda yang belum pernah menggunakan sintax java atau XML sebelumnya,
karena di dalam buku ini, semua sintax tersebut di atas dikemas sedemikian rupa sehingga para
developer yang baru dalam dunia android tidak akan merasa kebingungan dalam membacanya.
Isinya yang dipenuhi dengan step-by-step langakh dan gambar, menjadikan buku ini menarik dan
informative.
Android memang luar biasa. Jika Anda ingin membuat aplikasi sendiri untuk Android,
maka Anda WAJIB membaca ebook ini. :D
Ada banyak jalan menuju ROMA, banyak cara juga untuk membangun aplikasi Android.
Salah satunya menggunakan software ampuh bernama Eclipse menggunakan bahasa
pemrograman Java. Software ini GRATIS! Dan sudah dulengkapi berbagai macam plugin untuk
mengembangkan aplikasi berbasis Android. Perlu Anda ketahui, untuk menjalankan Eclipse, kita
tidak perlu melakukan instalasi terlebih dahulu. Hebat kan?? :D
Oya, jika Anda tidak memiliki HP Android, Jangan khawatir, karena dengan Eclipse kita
sudah dibekali emulatornya. Hehehe....
Bagaimana cara membuatnya? Jika anda sudah pernah berlajar XML dan JAVA, pasti sangat
mudah. Namun jika belum pernah, jangan khawatir. Karena omAyib akan membahas disini. :D.
Bagi pemula yang belum mengenal JAVA dan XML sebelumnya, saat kamu menulis program,
abaikan saja makna-makna syntaxnya. Ikuti sesuai perintah pada tutorial dan tulis apa adanya.
Ibarat anak kecil yang belum bisa bicara karena tidak tahu bahasanya. Biarkan saja mengalir. Asal
kamu banyka berlatih, nanti kamu akan tahu dengan sendirinya makna syntax dari bahasa
pemrograman. Tentunya sering-sering bertanya pada help.
Yuk kita mulai!:D
Contohnya seperti gambar di bawah ini
List buat aplikasi android tipe pariwisata
Jika anda ingin mendownload ebooknya dengan lengkap agar bisa mengoptimalkan pembelajaran anda saya kasih link di bawah ini
Jangan Lupa Sertakan Komen yang membangun di bawah ini ya
Belajar Menjadi Hacker Untuk Pemula (Pemula Harus Tau Dasar-Dasar Hacker)
Belajar Menjadi Hacker Untuk Pemula
Pembelajaran ini adalah translate dari hacker Highschool dari universitas di inggris.
Informasi “Lisensi untuk Penggunaan”
Pelajaran dan buku kerja berikut terbuka dan tersedia untuk umum di bawah ini
syarat dan ketentuan ISECOM:
Semua pekerjaan dalam proyek Hacker Highschool disediakan untuk penggunaan non-komersial dengan
siswa sekolah dasar, siswa sekolah menengah pertama, dan siswa sekolah menengah atas apakah dalam a
lembaga publik, institusi swasta, atau bagian dari home-schooling. Bahan-bahan ini mungkin tidak
direproduksi untuk dijual dalam bentuk apa pun. Ketentuan kelas, kursus, pelatihan, atau kamp bersama
bahan-bahan ini yang dikenakan biaya secara tegas dilarang tanpa lisensi termasuk
kelas kuliah, kelas universitas, kelas sekolah perdagangan, musim panas atau kamp komputer, dan
serupa. Untuk membeli lisensi, kunjungi bagian LISENSI dari laman web Hacker Highschool di
www.hackerhighschool.org/license.
Proyek HHS adalah alat pembelajaran dan seperti halnya alat belajar, instruksi adalah pengaruhnya
instruktur dan bukan alatnya. ISECOM tidak dapat menerima tanggung jawab untuk bagaimana ada
informasi di sini diterapkan atau disalahgunakan.
1.0 Pendahuluan
Selamat datang di program Hacker Highschool! Program ini dirancang untuk mendorong Anda
berpengetahuan luas dan banyak akal. Tema instruksi inti adalah untuk memanfaatkan rasa ingin tahu hacker
di dalam Anda dan untuk membimbing Anda secara progresif melalui pendidikan peretas Anda untuk membantu Anda tumbuh menjadi
peran bertanggung jawab, mampu menentukan masalah keamanan dan privasi dan membuat yang tepat
keputusan keamanan untuk diri sendiri.
Meskipun ada sensasi untuk meretas sebagian karena sifat ilegal pelanggaran komputer, kami
ingin menunjukkan kepada Anda bahwa itu sama besarnya dengan getaran untuk memperingatkan orang lain tentang penyimpangan dalam keamanan dan membuat
mereka publik tanpa khawatir akan masuk penjara. Sebagai warga negara di sebagian besar negara, itu tidak
hanya hak Anda, tetapi tanggung jawab Anda, untuk melaporkan keamanan dan privasi bocor ke yang benar
otoritas. Anda melakukan ini bukan karena Anda bisa, tetapi karena banyak orang lain tidak bisa. Kamu
membantu mereka yang tidak bisa menahan diri. Inilah yang dilakukan kelompok pengawas. Ini adalah apa
Anda akan belajar melakukannya.
PELAJARAN 1 - MENJADI HACKER
1.1 Sumber Daya
Pelajaran ini adalah tentang cara belajar - keterampilan penting untuk peretas. Peretasan, dalam kenyataannya, adalah kreatif
proses yang lebih didasarkan pada gaya hidup daripada pelajaran. Kami tidak bisa mengajari Anda segalanya tentang Anda
perlu tahu, tetapi kami dapat membantu Anda mengenali apa yang perlu Anda pelajari. Ini juga benar karena
untuk kemajuan konstan dalam ilmu komputer. Apa yang kami ajarkan hari ini mungkin tidak
rilis besok. Ini jauh lebih baik bagi Anda untuk merangkul kebiasaan belajar hacker, yang
mungkin bagian paling penting dari peretasan dan akan memisahkan Anda dari script kiddie (seseorang
yang menjalankan alat peretasan tanpa mengetahui bagaimana atau mengapa mereka bekerja).
Kata-kata dan konsep yang tidak Anda pahami dalam buku kerja ini mungkin memerlukan penelitian di web
atau di perpustakaan. Jika Anda tidak memahami suatu kata atau topik, penting bagi Anda untuk mencarinya. Mengabaikan
itu hanya akan menyulitkan Anda untuk memahami konsep di buku kerja lain. Yang lain
buku kerja dapat meminta Anda untuk menyelidiki suatu topik di web dan kemudian mengharapkan Anda untuk menggunakan
informasi yang Anda temukan di web untuk menyelesaikan latihan di buku kerja itu - tetapi itu
buku kerja tidak akan menjelaskan kepada Anda bagaimana melakukan penelitian ini. Buku kerja ini adalah satu-satunya dengan
penjelasan menyeluruh tentang bagaimana penelitian dibangun di dalamnya, jadi pastikan untuk menghabiskan waktu sebanyak Anda
perlu belajar bagaimana penelitian menggunakan berbagai sumber yang tersedia untuk Anda.
Jangan hanya membatasi diri pada komputer, peretasan, dan internet. Peretas hebat tersebar di seluruh penjuru
dan kreatif. Banyak dari mereka adalah pelukis, penulis, dan desainer. Keterampilan peretasan bisa
juga diterapkan ke bidang lain, seperti Ilmu Politik (lihat The Prince oleh Machiavelli untuk sebuah
contoh).
Selain tertarik dengan bidang lain, Anda harus tertarik dengan bisnis lain
beroperasi. Membaca buku tentang segala hal dari psikologi hingga fiksi ilmiah akan menjadikan Anda a
peretas yang jauh lebih fleksibel dan fungsional. Ingat, peretasan adalah tentang mencari tahu caranya
sesuatu bekerja terlepas dari bagaimana mereka dirancang untuk bekerja. Ini adalah bagaimana Anda mengekspos rasa tidak aman,
kerentanan, dan kebocoran.
1.1.1 Buku
Buku adalah cara yang bagus untuk mempelajari fondasi dan ilmu pengetahuan faktual dari semua yang Anda inginkan
untuk mengeksplorasi. Ingin tahu sesuatu tentang dasar-dasar sains, seperti perangkat keras
rincian PC Anda? Tidak ada yang akan membantu Anda lebih dari membaca buku saat ini tentang hal itu.
Masalah utama dengan buku untuk komputer adalah mereka cepat menjadi tua. Rahasianya adalah untuk
belajar untuk melihat struktur dasar di bawah kulit tipis detail. MS-DOS dan
Windows jelas berbeda, tetapi keduanya didasarkan pada prinsip logika Boolean yang dimiliki
komputer yang digerakkan sejak Ada, Countess of Lovelace, menulis program komputer pertama di
abad kesembilan belas. Masalah keamanan dan privasi mungkin telah berubah dalam 2.500 tahun terakhir,
tetapi The Art of War oleh Sun Tzu mencakup prinsip-prinsip dasar yang masih berlaku saat ini.
Meskipun informasi yang ditemukan di buku mungkin tidak 'terkini ”sebagai informasi yang datang
dari sumber lain, Anda akan menemukan bahwa informasi yang Anda temukan di buku lebih mungkin
faktual akurat daripada yang berasal dari sumber lain. Seorang penulis menghabiskan setahun
menulis buku lebih mungkin untuk memeriksa fakta daripada seseorang yang memperbarui blog enam kali
hari. (Lihat Bagian 1.1.3 Zine dan Blog untuk informasi lebih lanjut.) Tapi ingat - akurat
bukan berarti tidak bias.
Anda tidak perlu memulai perpustakaan sendiri, tetapi Anda mungkin ingin menulis catatan dalam margin atau
jika tidak tandai apa yang Anda baca, dan ini adalah sesuatu yang hanya dapat Anda lakukan di buku Anda sendiri.
Akhirnya, jangan melihat buku dan menyerah bahkan sebelum Anda mulai hanya karena ukuran dan
kompleksitas. Sebagian besar buku-buku tebal besar yang Anda lihat duduk tidak dibaca dari depan
menutupi. Pikirkan mereka sebagai halaman web prasejarah. Buka satu hingga halaman acak dan mulai
PELAJARAN 1 - MENJADI HACKER
untuk membaca. Jika Anda tidak mengerti sesuatu, mundurlah dan cari penjelasannya (atau lewati
maju ke sesuatu yang masuk akal). Lewati bo
Pelajaran ke dua adalah mengidentifikasi system
5.0 Pendahuluan
Jelas bahwa seseorang yang duduk di keyboard komputer Anda dapat berkumpul
informasi tentang itu, termasuk sistem operasi dan program yang sedang berjalan, tetapi itu
juga mungkin bagi seseorang untuk menggunakan koneksi jaringan untuk mengumpulkan informasi tentang a
komputer remot. Pelajaran ini akan menjelaskan beberapa cara di mana informasi itu bisa
berkumpul. Mengetahui bagaimana informasi ini dikumpulkan akan membantu Anda memastikan bahwa Anda lokal
komputer aman dari aktivitas ini.
5
PELAJARAN 5 - SISTEM IDENTIFIKASI
5.1 Mengidentifikasi Server
Ada sejumlah sumber yang berguna di Web yang memungkinkan Anda mengumpulkan informasi
tentang nama domain dan alamat IP.
5.1.1 Mengidentifikasi Pemilik Domain
Langkah pertama dalam mengidentifikasi sistem remote adalah melihat nama domain atau alamat IP. Menggunakan
Pencarian Whois, Anda dapat menemukan informasi berharga, termasuk identitas pemilik
domain dan informasi kontak, yang mungkin termasuk alamat dan nomor telepon. Catatan
bahwa sekarang ada sejumlah pendaftar nama domain, dan tidak semua database whois mengandung
informasi untuk semua domain. Anda mungkin harus melihat lebih dari satu database whois yang ditemukan
informasi tentang domain yang Anda selidiki.
5.1.2 Mengidentifikasi alamat IP suatu Domain
Ada sejumlah cara untuk menentukan alamat IP suatu domain. Alamatnya mungkin
tercantum dalam informasi whois atau Anda mungkin harus menggunakan DNS atau Layanan Nama Domain
Lihatlah. (Mesin pencari web akan menyediakan sejumlah sumber daya untuk menemukan alamat IP
dari nama domain.)
Setelah Anda memiliki alamat IP, Anda dapat mengakses catatan dari berbagai anggota
Organisasi Sumber Daya Nomor (http://www.arin.net/ atau http://www.ripe.net/), untuk mendapatkan
informasi tentang bagaimana alamat IP didistribusikan. Nomor IP ditetapkan ke layanan
penyedia dan jaringan dalam kelompok besar, dan mengetahui grup alamat IP mana yang dikandung
dalam, dan siapa yang memiliki hak atas grup itu, dapat sangat berguna. Ini dapat membantu Anda menentukan
informasi tentang server atau penyedia layanan yang digunakan situs web.
Latihan:
Pilih nama domain yang valid dan gunakan pencarian Whois untuk mencari tahu siapa yang memiliki domain itu.
dominio (http://www.whois.com -> "isecom.org" + Pergi -> Whois Lookup) Apa yang lain
informasi tersedia? Kapan domain dibuat? Kapan akan kedaluwarsa? Kapan terakhir kali
diperbarui?
Temukan alamat IP untuk nama domain ini. Menggunakan whois lookup untuk berbagai anggota
Organisasi Sumber Daya Bilangan menentukan siapa alamat IP ini telah ditugaskan. (Mulai
dengan www.arin.net, halaman, yang juga tertaut ke anggota lain NRO.) Apa itu
kisaran angka-angka lain yang juga telah terdaftar pada entitas ini?
5.2 Mengidentifikasi Layanan
Setelah Anda menetapkan pemilik dan alamat IP suatu domain, Anda dapat mulai
mencari informasi tentang server yang dirujuk oleh domain tersebut.
5.2.1 Ping dan TraceRoute
Sekarang Anda tahu siapa yang memiliki domain tersebut, dan siapa nomor IP yang telah ditetapkan, Anda
dapat memeriksa untuk melihat apakah server tempat situs web aktif sebenarnya aktif. Perintah ping akan
memberitahu Anda jika sebenarnya ada komputer yang terkait dengan domain atau IP tersebut. Perintah
ping domain atau
ping ipaddress
6
PELAJARAN 5 - SISTEM IDENTIFIKASI
akan memberi tahu Anda jika ada komputer aktif di alamat itu.
Jika output dari perintah ping menunjukkan bahwa paket yang dikirim telah diterima, maka Anda
dapat berasumsi bahwa server aktif.
Perintah lain, tracert (di Windows) atau traceroute (di Linux) akan menunjukkan kepada Anda langkah-langkah itu
informasi mengambil saat perjalanan dari komputer Anda ke komputer jarak jauh. Menelusuri rute
bahwa paket yang diambil terkadang akan memberi Anda informasi tambahan tentang komputer di dalamnya
jaringan dengan komputer yang menjadi target jejak Anda. Misalnya, komputer akan
alamat IP serupa sering kali menjadi bagian dari jaringan yang sama.
Latihan:
Ping alamat situs web atau IP yang valid (ping www.isecom.org atau ping 216.92.116.13). Jika Anda mendapatkan
respons yang berhasil, ping alamat IP berikutnya. Apakah ini menghasilkan respons yang sukses?
Gunakan tracert atau traceroute untuk melacak rute dari komputer lokal Anda ke alamat IP itu
Anda digunakan dalam latihan sebelumnya. Berapa banyak langkah yang dibutuhkan? Apakah ada yang terdaftar
komputer memiliki alamat IP yang sama?
5.2.2 Banner Grabbing
Langkah selanjutnya dalam mengidentifikasi sistem remote adalah mencoba terhubung menggunakan telnet dan FTP. Itu
program server untuk layanan ini menampilkan pesan teks yang disebut spanduk. Sebuah spanduk dapat menyatakan
jelas dan tepat apa program server sedang berjalan. Misalnya, saat Anda terhubung ke
server FTP anonim, Anda mungkin mendapatkan pesan berikut:
Terhubung ke anon.server.
220 ProFTPD Server (Selamat Datang..)
Pengguna (anon.server: (tidak ada)):
Sedangkan nomor 220 adalah kode FTP yang menunjukkan bahwa server siap untuk pengguna baru,
pesan teks ProFTPD Server mengidentifikasi program server FTP yang sedang berjalan di
komputer remot. Menggunakan mesin pencari web, Anda dapat mempelajari apa sistem operasi tersebut program
6.0 Pendahuluan
"Malware" adalah program atau bagian dari program yang memiliki jahat ("Mal") atau tidak menyenangkan
berpengaruh pada keamanan komputer Anda. Ini mencakup banyak istilah berbeda yang mungkin telah Anda dengar
sebelumnya, seperti "Virus", "Worm" dan "Trojan" dan mungkin beberapa yang tidak Anda sukai
"Rootkit", "Logicbomb" dan "Spyware". Pelajaran ini akan memperkenalkan, mendefinisikan dan menjelaskan masing-masing
subdivisi malware ini, akan memberi Anda contoh, dan akan menjelaskan beberapa
tindakan penanggulangan yang dapat diterapkan untuk membatasi masalah yang disebabkan oleh malware.
6.1 Virus (Virii)
6.1.1 Pendahuluan
Virus - ini adalah jenis malware yang paling umum yang akan disadari oleh orang-orang. Alasan itu
ia dikenal sebagai virus, bukan yang lainnya, bersifat historis. Pers menjalankan cerita-cerita pertama
virus komputer pada saat yang sama dengan artikel tentang penyebaran AIDS. Pada saat itu, di sana
adalah paralel sederhana yang dapat dengan mudah ditarik antara keduanya, melalui propagasi
interaksi dengan pihak yang terkontaminasi, ketergantungan pada tuan rumah dan "kematian" tertinggi
apapun yang terinfeksi. Ini menghasilkan, dan kadang-kadang masih terjadi, dalam kekhawatiran bahwa orang bisa
menjadi "terinfeksi" dengan virus komputer.
6.1.2 Deskripsi
Virus atau virii adalah perangkat lunak yang mereplikasi diri, yang mirip dengan virus biologis, melekat
sendiri ke program lain, atau, dalam kasus "virus makro", ke file lain. Virusnya
hanya dijalankan ketika program atau file dijalankan atau dibuka. Inilah yang membedakan virus dari
cacing. Jika program atau file tidak diakses dengan cara apa pun, maka virus tidak akan berjalan dan tidak akan
copy sendiri lebih lanjut.
Ada sejumlah jenis virus, meskipun, secara signifikan, bentuk yang paling umum saat ini adalah
virus makro, dan yang lain, seperti virus sektor boot sekarang hanya ditemukan "di penangkaran".
6.1.2.1 Virus Sektor Boot
Virus sektor boot adalah jenis virus pertama yang dibuat. Ia bersembunyi di dalam eksekusi
kode pada awal bootable disk. Ini berarti bahwa untuk menginfeksi mesin, Anda
diperlukan untuk boot dari floppy disk yang terinfeksi. Dulu, (15 tahun atau lebih) booting
dari floppy adalah kejadian yang relatif teratur, yang berarti bahwa virus tersebut sebenarnya
tersebar dengan baik pada saat orang-orang tahu apa yang sedang terjadi. Virus ini (dan
semua jenis lainnya) harus meninggalkan tanda tangan yang mencoba mendeteksi infeksi berikutnya, jadi
karena tidak berulang kali menginfeksi target yang sama. Ini adalah tanda tangan yang memungkinkan perangkat lunak lain
(seperti Anti-Virus-software) untuk mendeteksi infeksi.
6.1.2.2 Virus File yang Dapat Dieksekusi
File Executable File menempel pada file, seperti file .exe atau .com. Beberapa virus
secara khusus akan mencari program yang merupakan bagian dari sistem operasi, dan dengan demikian
kemungkinan besar akan dijalankan setiap kali komputer dihidupkan, meningkatkan mereka
kemungkinan propagasi yang berhasil. Ada beberapa cara menambahkan virus ke
5
PELAJARAN 6 - PERANGKAT LUNAK
file yang dapat dieksekusi, beberapa di antaranya berfungsi lebih baik daripada yang lain. Cara paling sederhana (dan paling tidak
halus) adalah untuk menimpa bagian pertama dari file yang dapat dieksekusi dengan kode virus. Ini berarti
bahwa virus dieksekusi, tetapi program itu kemudian akan crash, meninggalkannya cukup
jelas bahwa ada infeksi - terutama jika file tersebut merupakan file sistem yang penting.
6.1.2.3. Virus Hentikan dan Stay Resident (TSR)
TSR adalah istilah dari DOS di mana aplikasi akan memuat dirinya ke dalam memori, dan kemudian
tetap ada di latar belakang, memungkinkan komputer berjalan seperti biasa di
latar depan. Semakin kompleks virus ini akan mencegat panggilan sistem yang akan
mengekspos mereka dan mengembalikan hasil yang salah - orang lain akan menempelkan diri ke 'dir'
perintah, dan kemudian menginfeksi setiap aplikasi di direktori yang terdaftar - beberapa bahkan
menghentikan (atau menghapus) perangkat lunak Anti-Virus yang diinstal ke dalam sistem.
6.1.2.4 Virus Polimorfik
Virus awal cukup mudah dideteksi. Mereka memiliki tanda tangan tertentu untuk mengidentifikasi mereka,
baik dalam diri mereka sebagai metode untuk mencegah infeksi ulang, atau hanya karena mereka memiliki
struktur khusus yang memungkinkan untuk dideteksi. Kemudian datanglah virus polimorfik.
Poli - yang berarti bentuk ganda dan morfik - yang berarti. Virus-virus ini mengubah diri mereka sendiri
setiap kali mereka mereplikasi, menata ulang kode mereka, mengubah enkripsi dan umumnya
membuat diri mereka terlihat sangat berbeda. Ini menciptakan masalah besar, seperti seketika di sana
jauh lebih kecil tanda tangan yang tetap sama - beberapa virus "lebih baik" adalah
dikurangi menjadi tanda deteksi beberapa byte. Masalahnya meningkat dengan
pelepasan sejumlah perangkat polimorfik ke dalam komunitas penulisan virus yang diizinkan
virus apa pun untuk diciptakan kembali sebagai polimorf.
6.1.2.5 Virus Makro
Virus Macro memanfaatkan kemampuan built-in sejumlah program untuk dieksekusi
kode. Program seperti Word dan Excel memiliki versi terbatas, tetapi sangat kuat
Bahasa pemrograman Visual Basic. Ini memungkinkan untuk otomatisasi tugas yang berulang, dan
otomatis
Jika Ingin Mendapatkan E-Book Pembelajaran Lengkapnya anda bisa DOWNLOAD DI SINI
Sekian Postingan saya tentang Dasar menjadi HACKER Kali ini
Pengertian SET INTRUKSI Dan Contoh Pengalamatannya (Jenis Intruksi, Keunggulan Dan Kelemahan)
Pengertian SET INTRUKSI Dan Contoh Pengalamatannya (Jenis Intruksi, Keunggulan Dan Kelemahan)
Apa itu SET Intruksi?
SET INSTRUKSI
Dari Wikipedia bahasa Indonesia, ensiklopedia bebas
Set Instruksi (bahasa Inggris: Instruction Set, atau Instruction Set Architecture (ISA)) didefinisikan sebagai suatu aspek dalam arsitektur komputer yang dapat dilihat oleh para pemrogram. Secara umum, ISA ini mencakup jenis data yang didukung, jenis instruksi yang dipakai, jenis register, mode pengalamatan, arsitektur memori, penanganan interupsi, eksepsi, dan operasi I/O eksternalnya (jika ada).
ISA merupakan sebuah spesifikasi dari Pullman semua kode-kode biner (opcode) yang diimplementasikan dalam bentuk aslinya (native form) dalam sebuah desain prosesor tertentu. Kumpulan opcode tersebut, umumnya disebut sebagai bahasa mesin (machine language) untuk ISA yang bersangkutan. ISA yang populer digunakan adalah set instruksi untuk chip Intel x86, IA-64, IBM PowerPC, Motorola 68000, Sun SPARC, DEC Alpha, dan lain-lain.
ISA kadang-kadang digunakan untuk membedakan kumpulan karakteristik yang disebut di atas dengan mikroarsitektur prosesor, yang merupakan kumpulan teknik desain prosesor untuk mengimplementasikan set instruksi (mencakup microcode, pipeline, sistem cache, manajemen daya, dan lainnya). Komputer-komputer dengan mikroarsitektur berbeda dapat saling berbagi set instruksi yang sama. Sebagai contoh, prosesor Intel Pentium dan prosesor AMD Athlon mengimplementasikan versi yang hampir identik dari set instruksi Intel x86, tetapi jika ditinjau dari desain internalnya, perbedaannya sangat radikal. Konsep ini dapat diperluas untuk ISA-ISA yang unik seperti TIMI yang terdapat dalam IBM System/38 dan IBM IAS/400. TIMI merupakan sebuah ISA yang diimplementasikan sebagai perangkat lunak level rendah yang berfungsi sebagai mesin virtual. TIMI didesain untuk meningkatkan masa hidup sebuah platform dan aplikasi yang ditulis untuknya, sehingga mengizinkan platform tersebut agar dapat dipindahkan ke perangkat keras yang sama sekali berbeda tanpa harus memodifikasi perangkat lunak (kecuali yang berkaitan dengan TIMI). Hal ini membuat IBM dapat memindahkan platform AS/400 dari arsitektur mikroprosesor CISC ke arsitektur mikroprosesor POWER tanpa harus menulis ulang bagian-bagian dari dalam sistem operasi atau perangkat lunak yang diasosiasikan dengannya.
Ketika mendesain mikroarsitektur, para desainer menggunakan Register Transfer Language (RTL) untuk mendefinisikan operasi dari setiap instruksi yang terdapat dalam ISA.
Sebuah ISA juga dapat diemulasikan dalam bentuk perangkat lunak oleh sebuah interpreter. Karena terjadi translasi tambahan yang dibutuhkan untuk melakukan emulasi, hal ini memang menjadikannya lebih lambat jika dibandingkan dengan menjalankan program secara langsung di atas perangkat keras yang mengimplementasikan ISA tersebut. Akhir-akhir ini, banyak vendor ISA atau mikroarsitektur yang baru membuat perangkat lunak emulator yang dapat digunakan oleh para pengembang perangkat lunak sebelum implementasi dalam bentuk perangkat keras dirilis oleh vendor.
PENGALAMATAN
Pengalamatan digunakan untuk menentukan suatu alamat tempat untuk dimana operand akan di fetch. Dapat meningkatkan kecepatan pelaksanaan instruksi dengan menurunkan jumlah referensi pada memori utama dan meningkatkan jumlah referensi pada register kecepatan tinggi. Mode pengalamatan ini menjabarkan suatu aturan untuk menginterpresetasikan atau memodifikasi field alamat dari instruksi sebelum operand di referensikan Pada semua mode pengalamatan lainnya, operand yang sesungguhnya tidak disimpan pada field alamat tetapi beberapa nilai di jabarkan dan di gunakan untuk menentukan operasi operand.
Teknik pengalamatan yang umum dipergunakan adalah :
a) Immediate Addressing (OPERAND = A)
Digunakan untuk menentukan dan menggunakan konstanta atau nilai-nilai variabel awal. Tidak terdapat referensi memori selain dari instruksi yang diperlukan untuk memperoleh operand. Cara seperti ini dapat menghemat siklus memori atau cache dalam siklus instruksi. Kerugian dari immediate addressing adalah ukuran bilangan dibatasi oleh ukuran field alamat. Bentuk pengalamatan ini yang paling sederhana. Operand benar – benar ada dalam instruksi atau bagian dari instruksi=Operand sama dengan field alamat. Umumnya bilangan akan disimpan dalam bentuk komplemen dua. Bit paling kiri sebagai bit tanda. Ketika operand dimuatkan ke dalam register data, bit tanda akan digeser ke kiri hingga maksimum word data.
Contoh : ADD 5 ; tambahkan 5 pada akumulator
Keuntungan
• Mode ini adalah tidak adanya referensi memori selain dari instruksi yang diperlukan untuk memperoleh operand.
• Menghemat siklus instruksi sehingga proses keseluruhan akan cepat.
Kerugiannya
• Ukuran bilangan dibatasi oleh ukuran field alamat
b) Direct Addressing (EA = A)
Merupakan mode pengalamatan yang sederhana yang hanya memerlukan sebuah referensi memori dan tidak memerlukan kalkulasi khusus. Memiliki keterbatasan ruang alamat.
Kelebihan :
• Field alamat berisi efektif address sebuah operand.
• Teknik ini banyak digunakan pada komputer lama dan komputer kecil.
• Hanya memerlukan sebuah referensi memori dan tidak memerlukan kalkulasi khusus.
Kelemahan :
• Keterbatasan field alamat karena panjang field alamat biasanya lebih kecil dibandingkan panjang word
Contoh : ADD A ; tambahkan isi pada lokasi alamat A ke akumulator.
c) Indirect Addressing (EA = (A))
Field alamat mengacu pada alamat word di dalam memori, sehingga membuat alamat operand menjadi lebih panjang. Untuk setiap panjang word sebesar N, dapat digunakan sebuah ruang alamat 2N. Sedangkan kerugiannya adalah bahwa eksekusi instruksi memerlukan dua referensi memori untuk mengambil operand, sebuah referensi memori untuk mengambil alamat dan referensi lainnya untuk mendapatkan nilainya. Mode pengalamatan tak langsung dimana field alamat mengacu pada alamat word di dalam memori, yang pada gilirannya akan berisi alamat operand yang panjang
Contoh : ADD (A) ; tsmbahkan isi yang ditunjuk oleh isi alamat A ke akumulator
Keuntungan:
• Ruang bagi alamat menjadi besar sehingga semakin banyak alamat yang dapat referensi.
Kerugian :
• Diperlukan referensi memori ganda dalam satu fetch sehingga memperlambat proses operasi.
d) Register Addressing (EA = R)
Memerlukan field alamat berukuran kecil dalam instruksi dan tidak memerlukan referensi memori. Metode pengalamatan register mirip dengan mode pengalamatan langsung. Perbedaannya terletak pada field alamat yang mengacu pada register, bukan pada memori utama. Field yang mereferensi register memiliki panjang 3 atau 4 bit, sehingga dapat mereferensi 8 atau 16 register general purpose.
Keuntungan :
• Diperlukan field alamat berukuran kecil dalam instruksi dan tidak diperlukan referensi memori.
• Akses ke register lebih cepat daripada akses ke memori, sehingga proses eksekusi akan lebih cepat.
Kerugian :
• Ruang alamat menjadi terbatas
e) Indirect Register Addressing (EA = (R))
Keterbatasan ruang alamat dapat diatasi dengan membiarkan field alamat mereferensi lokasi panjang word di dalam register yang berisi sebuah alamat. Hanya saja untuk eksekusi instruksi, menggunakan satu referensi memori yang lebih sedikit dibandingkan dengan Indirect Addressing. Metode pengalamatan register tidak langsung mirip dengan mode pengalamatan tidak langsung. Perbedaannya adalah field alamat mengacu pada alamat register. Letak operand berada pada memori yang ditunjuk oleh isi register. Keuntungan dan keterbatasan pengalamatan register tidak langsung pada dasarnya sama dengan pengalamatan tidak langsung. Keterbatasan field alamat diatasi dengan pengaksesan memori yang tidak langsung sehingga alamat yang dapat direferensi makin banyak. Dalam satu siklus pengambilan dan penyimpanan, mode pengalamatan register tidak langsung hanya menggunakan satu referensi memori utama sehingga lebih cepat daripada mode pengalamatan tidak langsung.
f) Displacement Addressing (EA =A + (R))
Mode pengalamatan yang fleksibel yang mampu mengkombinasikan Direct Addressing dan Indirect Register Addressing. Diplacement Addressing yang kompleks mensyaratkan instruksi untuk memiliki dua buah field alamat, dan sedikitnya sebuah field yang eksplisit. Nilai A yang eksplisit digunakan secara direct sedangkan (R) merupakan referensi implisit yang berdasarkan opcode, mengacu ke register yang isinya ditambahkan ke A sehingga memperoleh Effective Address. Menggabungkan kemampuan pengalamatan langsung dan pengalamatan register tidak langsung. Mode ini mensyaratkan instruksi memiliki dua buah field alamat, sedikitnya sebuah field yang eksplisit. Field eksplisit bernilai A dan field implisit mengarah pada register. Operand berada pada alamat A ditambah isi register.
Tiga model displacement :
a. Relative addressing, register yang direferensi secara implisit adalah program counter (PC).
b. Base register addressing, register yang direferensikan berisi sebuah alamat memori, dan field alamat berisi perpindahan dari alamat itu.
c. Indexing adalah field alamat mereferensi alamat memori utama, dan register yang direferensikan berisi pemindahan positif dari alamat tersebut.
g) Stack Addressing (EA = puncak stack)
Stack adalah array lokasi yang linear, yang merupakan blok lokasi yang terbalik, sehingga sering disebut juga Last In First Out Queue. Tidak ada referensi memori di dalam Stack Addressing di mana aplikasi memori yang dimilikinya terbatas. Stack addressing merupakan bentuk implied addressing. Instruksi-instruksi mesin tidak perlu memiliki referensi memori namun secara implisit beroperasi pada bagian paling atas stack. Stack adalah array lokasi yang linier=pushdown list=last-in-firstout-queue. Stack merupakan blok lokasi yang terbalik. Butir ditambahkan ke puncak stack sehingga setiap saat blok akan terisi secara parsial. Yang berkaitan dengan stack adalah pointer yang nilainya merupakan alamat bagian paling atas stack. Dua elemen teratas stack dapat berada di dalam register CPU, yang dalam hal ini stack ponter mereferensi ke elemen ketiga stack. Stack pointer tetap berada di dalam register. Dengan demikian, referensi – referensi ke lokasi stack di dalam memori pada dasarnya merupakan pengalamatan register tidak langsung. Mengatasi keterbatasan format instruksi Dapat mereferensi lokasi memori yang besar dan Mode pengalamatan yang mampu menangani keterbatasan tersebut.
1. Masing – masing prosesor menggunakan mode pengalamatan yang berbeda – beda.
2. Memiliki pertimbangan dalam penggunaannya. Ada beberapa teknik pengalamatan
3. Ada beberapa teknik pengalamatan
Perbandingan Mode pengalamatan
1) Mode Pengalamatan Pentium Pentium dilengkapi bermacam – macam mode pengalamatan untuk memudahkan bahasa – bahasa tingkat tinggi mengeksekusinya secara efisien (C/Fortran)
2) Mode immediate. Operand berada di dalam instruksi. Operand dapat berupa data byte, word maupun doubleword
3) Mode operand register, operand adalah isi register.
Beberapa macam jenis register
• 8 bit (AH, BH, CH, DH, AL, BL, CL, DL)
• 16 bit (AX, BX, CX, DX, SI, DI, SP, BP)
• 32 bit (EAX, EBX, ECX, EDX, ESI, EDI, ESP, EBP)
• 64 bit yang dibentuk dari register 32 bit secara berpasangan. 64 bit biasanya untuk operasi floating point.
• register segmen (CS, DS, ES, SS, FS, GS)
4) Mode displacement Alamat efektif berisi bagian – bagian instruksi dengan displacement 8, 16, atau 32 bit. Dengan segmentasi, seluruh alamat dalam instruksi mengacu ke sebuah offset di dalam segmen. Dalam Pentium, mode ini digunakan untuk mereferensi variabel – variabel global.
FORMAT INTRUKSI
Format instruksi merupakan kelompok bit yang memberitahukan kepada komputer untuk menunjukan suatu operasi tertentu. Kode Instruksi dibagi dalam bagian-bagian, yang masing-masing bagian mempunyai interpretasi sendiri. Bagian yang paling pokok adalah :
• Opcode adalah sekelompok bit yang menunjukan operasi seperti ADD, SUBTRACT, SHIFT, dan COMPLEMENT
• Bagian lain dari instruksi mencakup satu operasi (operand) atau lebih
• Operand adalah suatu nama yang digunakan untuk obyek instruksi dan mungkin data atau alamat yang mengatakan dimana data tersebut
• Untuk membuat kode instruksi dalam komputer harus kode biner. (seperti operasi LOAD dan Store)
• Load adalah meng-copy bilangan dari lokasi memori kedalam register
• Strore adalah meng-copy bilangan dari register kedalam lokasi memori X
&___ _____ "______#___________ ___ _____
Bentuk Format Intruksi ada 3 :
format instruksi 3 alamat
Mempunyai bentuk umum seperti : [OPCODE][AH],[AO1],[AO2]. Terdiri dari satu alamat hasil, dan dua alamat operand, misal SUB Y,A,B Yang mempunyai arti dalam bentuk algoritmik : Y := A – B dan arti dalam bentuk penjelasan : kurangkan isi reg a dengan isi reg B, kemudian simpan hasilnya di reg Y.
bentuk bentuk pada format ini tidak umum digunakan di dalam computer, tetapi tidak dimungkinkan
ada pengunaanya, dalam peongoprasianya banyak register sekaligus dan program lebih pendek.
Contoh:
A, B, C, D, E, T, Y adalah register
Program: Y = (A – B) / ( C + D × E)
SUB Y, A, B Y := A – B
MPY T, D, E T := D × E
ADD T, T, C T := T + C
DIV Y, Y, T Y:= Y / T
Memerlukan 4 operasi
Format instruksi 2 alamat
Mempunyai bentuk umum : [OPCODE][AH],[AO]. Terdiri dari satu alamat hasil merangkap operand, satu alamat operand, missal : SUB Y,B yang mempunyai arti dalam algoritmik : Y:= Y – B dan arti dalam bentuk penjelasan : kurangkan isi reg Y dengan isi reg B, kemudian simpan hasillnya di reg Y. bentuk bentuk format ini masih digunakan di computer sekarang, untuk mengoprasikan lebih sedikit register, tapi panjang program tidak bertambah terlalu banyak.
Contoh :
A, B, C, D, E, T, Y adalah register
Program: Y = (A – B) / ( C + D × E)
MOVE Y, A Y := A
SUB Y, B Y := Y – B
MOVE T, D T := D
MPY T, E T := T × E
ADD T, C T := T + C
DIV Y, T Y:= Y / T
Memerlukan 6 operasi
Format instruksi 1 alamat
Mempunyai bentuk umum : [OPCODE][AO]. Terdiri dari satu alamat operand, hasil disimpan di
accumulator, missal : SUB B yang mempunyai arti dalam algoritmik : AC:= AC – B dan arti dalam bentuk
penjelasan : kurangkan isi Acc dengan isi reg B, kemudian simpan hasillnya di reg Acc. bentuk bentuk
format ini masih digunakan di computer jaman dahulu, untuk mengoprasikan di perlukan satu register,
tapi panjang program semakin bertambah.
Contoh :
A, B, C, D, E, Y adalah register
Program: Y = (A – B) / ( C + D × E)
LOAD D AC := D
MPY E AC := AC × E
ADD C AC := AC + C
STOR Y Y := AC
LOAD A AC := A
SUB B AC := AC – B
DIV Y AC := AC / Y
STOR Y Y := AC
Memerlukan 8 operasi
Format instruksi 0 alamat
Mempunyai bentuk umum : [OPCODE]. Terdiri dari semua alamat operand implicit, disimpan dalam bentuk stack. Operasi yang biasanya membutuhkan 2 operand, akan mengambil isi stack paling atas dan dibawahnya missal : SUB yang mempunyai arti dalam algoritmik : S[top]:=S[top-1]-S[top] dan arti dalam bentuk penjelasan : kurangkan isi stack no2 dari atas dengan isi stack paling atas, kemudian simpan hasilnya di stack paling atas, untuk mengoprasikan ada beberapa instruksi khusus stack PUSH dan POP.
Contoh :
A, B, C, D, E, Y adalah register
Program: Y = (A – B) / ( C + D × E)
PUSH A S[top] := A
PUSH B S[top] := B
SUB S[top] := A – B
PUSH C S[top] := C
PUSH D S[top] := D
PUSH E S[top] := E
MPY S[top] := D × E
ADD S[top] := C + S[top]
DIV S[top] := (A – B) /S[top]
POP Y Out := S[top]
Memerlukan 10 operasi
Format instruksi 0 alamat
Mempunyai bentuk umum : [OPCODE]. Terdiri dari semua alamat operand implicit, disimpan dalam bentuk stack. Operasi yang biasanya membutuhkan 2 operand, akan mengambil isi stack paling atas dan dibawahnya missal : SUB yang mempunyai arti dalam algoritmik : S[top]:=S[top-1]-S[top] dan arti dalam bentuk penjelasan : kurangkan isi stack no2 dari atas dengan isi stack paling atas, kemudian simpan hasilnya di stack paling atas, untuk mengoprasikan ada beberapa instruksi khusus stack PUSH dan POP.
Contoh :
A, B, C, D, E, Y adalah register
Program: Y = (A – B) / ( C + D × E)
PUSH A S[top] := A
PUSH B S[top] := B
SUB S[top] := A – B
PUSH C S[top] := C
PUSH D S[top] := D
PUSH E S[top] := E
MPY S[top] := D × E
ADD S[top] := C + S[top]
DIV S[top] := (A – B) /S[top]
POP Y Out := S[top]
Memerlukan 10 operasi
KESIMPULAN
Dari penjelasan diatas dapat di beri kesimpulan bahwa set intruksi mempunyai banyak pemrosesan dari pengalamatan, format intruksinya dan lain sebagainya.
Set Intruksi dapat di simpulkan dan didefinisikan sebagai suatu aspek dalam arsitektur komputer yang dapat dilihat oleh para pemrogram.
Pengalamatan set instruksi ada beberapa macam. Dengan kekurangan dn kelebihan masing-masing yang berbeda-beda.
Dalam Format intruksi ada beberapa jumlah alamat yang digunakan dalam operasi CPU tergantung format operasi masing-masing CPU.
Ada format operasi yang menggunakan 3, 2, 1, dan 0 register/alamat.
DAFTAR PUSTAKA
https://id.wikipedia.org/wiki/Set_instruksi
http://siskommbawawa.blogspot.co.id/
https://www.google.co.id/url?sa=t&rct=j&q=&esrc=s&source=web&cd=8&sqi=2&ved=0ahUKEwjkgJ3uq9HTAhVBRY8KHQnkCnwQFghbMAc&url=http%3A%2F%2Fsetia.lecturer.pens.ac.id%2FModul%2FArKom%2FPertemuan%252004.pdf&usg=AFQjCNFuKf1qOsVF8MSQs6Domldku-2FlA&sig2=GuOKLte_TrtZE3eWypBqAQ&cad=rja
http://rboversion.blogspot.co.id/2015/05/makalah-mode-dan-format-pengalamatan.html
Makalah Set Intruksi & Teknik Pengalamatan
https://www.google.co.id/?gws_rd=cr,ssl&ei=XooIWan6KozvvgSEiJzQCg#q=set+instruksi+arsitektur+komputer
Contoh Struktur Operator Aritmatika, Relasi , Logika Boolean And dan OR Pada Pemrograman Java
Contoh Struktur Operator Aritmatika Pada Pemrograman Java
public class aritmatikaDemo
{
public static void main(String[] args)
{
//sedikit angka
int i = 37;
int j = 42;
double x = 27.475;
double y = 7.22;
System.out.println("Variable values...");
System.out.println(" i = " + i);
System.out.println(" j = " + j);
System.out.println(" x = " + x);
System.out.println(" y = " + y); //penjumlahan angka
System.out.println("Adding...");
System.out.println(" i + j = " + (i + j));
System.out.println(" x + y = " + (x + y));
//pengurangan angka
System.out.println("Subtracting...");
System.out.println(" i - j = " + (i - j));
System.out.println(" x - y = " + (x - y));
//perkalian angka
System.out.println("Multiplying...");
System.out.println(" i * j = " + (i * j));
System.out.println(" x * y = " + (x * y));
//pembagian angka
System.out.println("Dividing...");
System.out.println(" i / j = " + (i / j));
System.out.println(" x / y = " + (x / y));
//menghitung hasil modulus dari pembagian
System.out.println("Computing the remainder...");
System.out.println(" i % j = " + (i % j));
System.out.println(" x % y = " + (x % y));
//tipe penggabungan
System.out.println("Mixing tipes...");
System.out.println(" j + y = " + (j + y));
System.out.println(" i * x = " + (i * x));
}
}
Berikut ini adalah output program,
Variable values...
i = 37
j = 42
x = 27.475
y = 7.22
i + j = 79
Adding...
x + y = 34.695
Subtracting...
i - j = -5
x - y = 20.255
Multiplying...
i * j = 1554
x * y = 198.37
Dividing...
i / j = 0
x / y = 3.8054
Computing the remainder...
i % j = 37
x % y = 5.815
Mixing tipes...
j + y = 49.22
i * x = 1016.58
Catatan: Ketika integer dan floating-point number digunakan sebagai operand untuk
operasi aritmatika tunggal, hasilnya berupa floating point. Integer adalah converter secara
implisit ke bentuk angka floating-point sebelum operasi berperan mengambil tempat.
2. Berikut ini adalah contoh program yang menggunakan operator Relasi,
public class RelasiDemo
{
public static void main(String[] args) {
//beberapa nilai
int i = 37;
int j = 42;
int k = 42;
System.out.println("Nilai variabel...");
System.out.println(" i = " + i);
System.out.println(" j = " + j);
System.out.println(" k = " + k);
//lebih besar dari
System.out.println("Lebih besar dari...");
System.out.println(" i > j = " + (i > j)); //false
System.out.println(" j > i = " + (j > i)); //true
System.out.println(" k > j = " + (k > j)); //false
//lebih besar atau sama dengan
System.out.println("Lebih besar dari atau sama dengan...");
System.out.println(" i >= j = " + (i >= j)); //false
System.out.println(" j >= i = " + (j >= i)); //true
System.out.println(" k >= j = " + (k >= j)); //true
//lebih kecil dari
System.out.println("Lebih kecil dari...");
System.out.println(" i < j = " + (i < j)); //true
System.out.println(" j < i = " + (j < i)); //false
System.out.println(" k < j = " + (k < j)); //false
//lebih kecil atau sama dengan
System.out.println("Lebih kecil dari atau sama dengan...");
System.out.println(" i <= j = " + (i <= j)); //true
System.out.println(" j <= i = " + (j <= i)); //false
System.out.println(" k <= j = " + (k <= j)); //true
//sama dengan
System.out.println("Sama dengan...");
System.out.println(" i == j = " + (i == j)); //false
System.out.println(" k == j = " + (k == j)); //true
//tidak sama dengan
System.out.println("Tidak sama dengan...");
System.out.println(" i != j = " + (i != j)); //true
System.out.println(" k != j = " + (k != j)); //false
}
}
Berikut adalah hasil keluaran dari program ini :
Nilai variabel...
i = 37
j = 42
k = 42
Lebih besar dari...
i > j = false
j > i = true
k > j = false
Lebih besar dari atau sama dengan...
i >= j = false
j >= i = true
k >= j = true
Lebih kecil dari...
i < j = true
j < i = false
k < j = false
Lebih kecil dari atau sama dengan...
i <= j = true
j <= i = false
k <= j = true
Sama dengan...
i == j = false
k == j = true
Tidak sama dengan...
i != j = true
k != j = false
3. Perbedaan dasar antara operator && dan & adalah bahwa && mensupports short-circuit
evaluations (atau evaluasi perbagian), sementara operator & tidak. Apa arti dari
pernyataan tersebut?
Diberikan suatu pernyataan,
exp1 && exp2
&& akan mengevaluasi pernyataan exp1, dan segera mengembalikan nilai false dan
menyatakan bahwa exp1 bernilai false. Jika exp1 bernilai false, operator tidak akan pernah
mengevaluasi exp2 karena hasil operasi operator akan menjadi false tanpa memperhatikan
nilai dari exp2. Sebaliknya, operator & selalu mengevaluasi kedua nilai dari exp1 dan exp2
sebelum mengembalikan suatu nilai jawaban.
Berikut ini adalah suatu contoh source code yang menggunakan logika dan boolean AND,
public class TestAND
{
public static void main( String[] args ){
int i = 0;
int j = 10;
boolean test= false;
//demonstrasi &&
test = (i > 10) && (j++ > 9);
System.out.println(i);
System.out.println(j);
System.out.println(test);
//demonstrasi &
test = (i > 10) & (j++ > 9);
System.out.println(i);
System.out.println(j);
System.out.println(test);
}
}
The output of the program is,
0
10
false
0
11
false
Catatan, bahwa j++ pada baris yang mengandung operator && tidak dievaluasi sejak
pernyataan pertama (i>10) yaitu telah bernilai sama dengan false.
4. Berikut ini sebuah contoh source code yang menggunakan operator logika dan boolean OR,
public class TestOR
{
public static void main( String[] args ){
int i = 0;
int j = 10;
boolean test= false;
//demonstrasi ||
test = (i < 10) || (j++ > 9);
System.out.println(i);
System.out.println(j);
System.out.println(test);
//demonstrasi |
test = (i < 10) | (j++ > 9);
System.out.println(i);
System.out.println(j);
System.out.println(test);
}
}
Hasil keluaran dari program ini adalah,
0
10
true
0
11
true
Catatan, bahwa j++ pada baris yang terdiri atas operator || tidak dievaluasi sejak
pernyataan pertama (i<10) yaitu telah bernilai sama dengan true.
Belajar Dasar, Pengertian, Tujuan, Manfaat Dan Struktur Pemrograman Java
Unknown
Belajar Dasar, Pengertian, Tujuan, Manfaat Dan Struktur Pemrograman Java
Dasar-Dasar Pemrograman
Tujuan
Pada bagian ini, kita akan mendiskusikan mengenai bagian dasar pemrograman Java. Kita
akan memulai dengan mencoba menjelaskan bagian dasar dari program Hello.java yang
telah diperkenalkan pada bab sebelumnya. Kita juga akan mendiskusikan beberapa
pedoman cara menulis script atau petunjuk penulisan kode dalam penulisan program yang
lebih efektif dan mudah dibaca.
Pada akhir pembahasan, diharapkan pembaca dapat :
1. Mengidentifikasi bagian dasar dari program Java
2. Membedakan mana yang termasuk ke dalam Java literals, tipe data dasar, tipe variabel,
pengidentifikasian dan operator
3. Mengembangkan program Java sederhana menggunakan konsep yang dipelajari pada
Menganalisa program Java Pertama
Sekarang, kita akan mencoba untuk menganalisa program Java pertama :
public class Hello
{
/**
* My first java program
*/
public static void main(String[] args) {
//menampilkan string ”Hello world” pada layar
System.out.println("Hello world!");
}
}
Baris pertama kode :
public class Hello
menandakan nama class yaitu Hello. Dalam Java, semua kode seharusnya ditempatkan di
dalam deklarasi class. kita melakukannya dengan menggunakan kata kunci class. Sebagai
tambahan, class menggunakan access specifier public, yang mengindikasikan bahwa class
kita mempunyai akses bebas ke class yang lain dari package yang lain pula (package merupakan kumpulan class-class). Kita akan membahas lebih dalam mengenai package dan
access specifier pada pembahasan selanjutnya.
Baris berikutnya yaitu yang terdiri atas kurung kurawal { menandakan awal blok. Pada kode
ini, kita menempatkan kurung kurawal pada baris selanjutnya setelah deklarasi class,
bagaimanapun, kita dapat juga meletakkan kurung kurawal ini setelah baris pertama dari
kode yang kita tulis. Jadi, kita dapat menulis kode kita sebagai berikut :
public class Hello
{
atau
public class Hello {
Tiga baris selanjutnya menandakan adanya komentar Java. Komentar adalah sesuatu yang
digunakan untuk mendokumentasikan setiap bagian dari kode yang ditulis. Komentar bukan
merupakan bagian dari program itu sendiri, tetapi digunakan untuk tujuan dokumentasi.
Komentar itu sendiri dapat ditambahkan pada kode yang Anda tulis sebagai petunjuk yang
dapat membantu proses pembelajaran pemrograman yang baik.
/**
* My first java program
*/
Komentar dinyatakan dengan tanda “/*” dan “*/”. Segala sesuatu yang ada diantara tanda
tersebut diabaikan oleh compiler Java, dan mereka hanya dianggap sebagai komentar.
Baris selanjutnya,
public static void main(String[] args) {
atau dapat juga ditulis sebagai berikut,
public static void main(String[] args)
{
mengindikasikan nama suatu method dalam class Hello yang bertindak sebagai method
utama. Method utama adalah titik awal dari suatu program Java. Semua program kecuali
applet yang ditulis dalam bahasa Java dimulai dengan method utama. Yakinkan untuk
mengikuti kaidah penulisan tanda yang benar.
Baris selanjutnya juga merupakan komentar,
//Menampilkan string "Hello world" pada layar
Sekarang kita mempelajari 2 cara untuk membuat komentar. Cara pertama adalah dengan
menempatkan komentar dalam /* dan */, dan cara yang lain adalah dengan menuliskan
tanda // pada awal komentar
Baris selanjutnya,
\System.out.println("Hello world!");
menampilkan teks “Hello World!” pada layar. Perintah System.out.println(), menampilkan
teks yang diapit oleh tanda double pute (“ ”) pada layar.
Dua baris terakhir yang terdiri atas dua kurung kurawal digunakan untuk menutup method
utama dan masing-masing class secara berurutan.
Petunjuk Penulisan Program:
1. Program Java yang Anda buat harus selalu diakhiri dengan ekstensi file .java.
2. Nama File seharusnya sesuai/sama dengan nama class public nya. Sebagai contoh, jika
nama class public Anda adalah Hello, Anda harus menyimpan file tersebut dengan nama
Hello.java.
3. Anda harus menulis komentar sebagai penjelasan pada kode yang Anda tulis, yaitu
komentar yang berisi keterangan mengenai baris perintah pada class atau apa yang
dijalankan oleh method yang Anda tulis tersebut.
Komentar pada Java
Komentar adalah catatan yang ditulis pada kode dengan tujuan sebagai bahan
dokumentasi. Teks tersebut bukan bagian dari program dan tidak mempengaruhi jalannya
program.
Java mendukung tiga jenis komentar : C++ style komentar satu baris, C style beberapa
baris, dan komentar javadoc khusus
Penulisan Komentar C++ Style
Komentar C++ style diawali dengan //. Semua teks setelah // dianggap sebagai komentar.
Sebagi contoh,
// This is a C++ style or single line comments
Penulisan Komentar C Style
Komentar C-style atau juga disebut komentar beberapa baris diawali dengan /* dan diakhiri
dengan */. Semua teks yang ada diantara dua tanda tersebut dianggap sebagai komentar.
Tidak seperti komentar C++ style, komentar ini dapat menjangkau beberapa baris. Sebagai
contoh,
/* this is an example of a
C style or multiline comments */
Komentar Khusus javadoc
Komentar javadoc khusus digunakan untuk men-generate dokumentasi HTML untuk
program Java Anda. Anda dapat menciptakan komentar javadoc dengan memulai baris
dengan /** dan mengakhirinya dengan */. Seperti Komentar C_style, dapat juga
menjangkau beberapa baris. Komentar ini juga dapat terdiri atas tag-tag untuk
menambahkan lebih banyak informasi pada komentar Anda. Sebagai contoh,
/**
This is an example of special java doc comments used for \n
generating an html documentation. It uses tags like:
@author Florence Balagtas
@version 1.2
*/
Pernyataan dalam Java dan Blok
Pernyataan adalah satu atau lebih baris kode yang diakhiri dengan semicolon. Sebagai
contoh untuk pernyataan tunggal adalah
System.out.println(“Hello world”);
Blok adalah satu atau lebih pernyataan yang terbentang antara kurung kurawal buka dan
kurung kurawal tutup yaitu sekumpulan pernyataan sebagai satu unit kesatuan. Blok
pernyataan dapat dikumpulkan akan tetapi tidak secara pasti mempunyai keterkaitan
fungsi. Beberapa jumlah spasi kosong diijinkan terdapat didalamnya, sebagai contoh dari
suatu blok adalah :
public static void main( String[] args ){
System.out.println("Hello");
System.out.println("world");
}
Petunjuk Penulisan Program:
1. Pada saat pembuatan blok, Anda dapat meletakkan kurung kurawal buka pada baris
dengan pernyataan seperti contoh sebagai berikut ,
public static void main( String[] args ){
atau Anda dapat meletakkan kurung kurawal pada baris selanjutnya, seperti,
public static void main( String[] args )
{
2. Anda harus memberi jarak (indent) pernyataan selanjutnya setelah awal dari blok ,
seperti contoh berikut,
public static void main( String[] args ){
System.out.println("Hello");
System.out.println("world");
}
Java Identifier
Java Identifier adalah suatu tanda yang mewakili nama-nama variabel, method, class, dsb.
Contoh dari Identifier adalah : Hello, main, System, out.
Pendeklarasian Java adalah case-sensitive. Hal ini berarti bahwa Identifier : Hello tidak
sama dengan hello. Identifier harus dimulai dengan salah satu huruf, underscore “_”, atau
tanda dollar “$”. Hurufnya dapat berupa huruf besar maupun huruf kecil. Karakter
selanjutnya dapat menggunakan nomor 0 smpai 9.
Identifier tidak dapat menggunakan kata kunci dalam Java seperti class, public, void, dsb.
Selanjutnya kita akan berdiskusi lebih banyak tentang kata kunci dalam Java.
Petunjuk Penulisan Program:
1. Untuk pemberian nama dari class Java, diberikan huruf kapital untuk huruf pertama pada
nama class. Untuk nama method dan variabel, huruf pertama dari kata harus dimulai
dengan huruf kecil. Sebagi contoh:
ThisIsAnExampleOfClassName
thisIsAnExampleOfMethodName
2. Pada kasus untuk identifier lebih dari satu kata, menggunakan huruf kapital untuk
mengindikasikan awal dari kata kecuali kata pertama. Sebagai contoh, charArray,
fileNumber, ClassName.
3. Hindari menggunakan underscores pada awal identifier seperti _read atau _write.
Keyword dalam Java
Kata kunci adalah identifier yang telah dipesan untuk didefinisikan sebelumnya oleh Java
untuk tujuan tertentu. Anda tidak dapat menggunakan keyword sebagai nama variabel,
class, method Anda, dsb. Berikut ini adalah daftar dari kata kunci dalam Java (Java
Keywords).
Kita akan berdiskusi tentang semua arti dari masing-masing kata kunci dan bagaimana
mereka digunakan dalam proses penulisan program Java.
Catatan: true, false, dan null bukan termasuk kata kunci akan tetapi mereka termasuk
kata-kata khusus, jadi Anda tidak dapat menggunakan mereka sebagai nama variabel pada
program Anda.
Java Literals
Literals adalah tanda bahwa tidak terjadi perubahan atau konstan. Macam-macam literals
dalam Java adalah : Integer Literals, Floating-Point Literals, Boolean Literals, Character
Literals dan String Literals.
Integer Literals
Integer literals dibedakan dalam beberapa format yang berbeda: desimal (berbasis 10),
heksadesimal (berbasis 16), and oktal (berbasis 8). Dalam penggunaan tipe data integer
pada program, kita harus mengikuti aturan penggunaan beberapa notasi khusus.
Gambar1: Java Key Word
Untuk angka desimal, kita tidak memerlukan notasi khusus. Kita hanya menulis angka
desimal seperti apa adanya. untuk angka heksadesimal, hal itu harus ditandai oleh “0x”
atau “0X”. untuk oktal, ditandai oleh“0”.
Sebagai contoh, mewakili angka 12. Penulisan dalam bentuk desimalnya adalah 12,
Sementara dalam heksadesimal, menjadi 0xC, dan dalam oktal, nilai tersebut sama dengan
014.
Default tipe data untuk integer literals adalah int. Int adalah signed 32-bit value. Pada
kasus-kasus tertentu Anda dapat berharap untuk memaksa integer literal untuk menjadi
tipe data long dengan menambahkan karakter “l” or “L”. tipe data long ditandai oleh
ditampilkannya data dalam 64-bit. Kita akan membahas mengenai tipe data pada
kesempatan selanjutnya.
Floating-Point Literals
Floating point literals mewakili bentuk desimal dengan bagian yang terpisah. Sebagai
contoh adalah 3.1415. Floating point literals dapat dinyatakan dalam notasi standard atau
scientific. Sebagai contoh, 583.45 dinyatakan dalam notasi standard, Sementara 5.8345e2
dinyatakan dalam notasi scientific.
Default Floating point literals mempunyai tipe data double yang dinyatakan dalam 64-bit.
Untuk menggunakan ketelitian yang lebih kecil (32-bit) float, hanya dengan menambahkan
karakter “f” atau “F”.
Boolean Literals
Boolean literals hanya memiliki dua nilai, true atau false.
Character Literals
Character Literals diwakili oleh karakter single Unicode. Karakter Unicode adalah 16-bit
character set yang menggantikan 8-bit ASCII character set. Unicode memungkinkan
pengunaan simbol dan karakter khusus dari bahasa lain.
Untuk menggunakan character literals, karakter tersebut di dalam tanda single pute (' ')
(single quote delimiters). Sebagai contoh huruf a, diwakili sebagai ‘a’.
Untuk menggunakan karakter khusus seperti karakter baris baru, backslash digunakan
diikuti dengan karakter kode. Sebagai contoh, ‘\n’ untuk karakter baris baru atau ganti
baris, ‘\r’ untuk menyatakan nilai balik (carriage return), ‘\b’ untuk backspace.
String Literals
String literals mewakili beberapa karakter dan dinyatakan dalam tanda double pute(“ ”)(
double quotes). Sebagai contoh string literal adalah, “Hello World”.
Tipe Data Primitif
Bahasa pemrograman Java mendefinisikan delapan tipe data primitif. Mereka diantaranya
adalah boolean (untuk bentuk logika), char (untuk bentuk tekstual), byte, short, int, long
(integral), double and float (floating point).
logika - boolean
Tipe data boolean diwakili oleh dua pernyataan : true dan false. Sebagai contoh adalah,
boolean result = true;
Contoh yang ditunjukkan diatas, mendeklarasikan variabel yang dinamai result sebagai
tipe data boolean dan memberinya nilai true.
teksual – char
Tipe data character (char), diwakili oleh karakter single Unicode. Tipe data ini harus
memiliki ciri berada dalam tanda single quotes(’ ’). Sebagai contoh,
‘a’ //Huruf a
‘\t’ //A tab
Untuk menampilkan karakter khusus seperti ' (single quotes) atau " (double quotes),
menggunakan karakter escape \. Sebagai contoh,
'\'' //untuk single quotes
'\"' //untuk double quotes
Meskipun String bukan merupakan tipe data primitif (namun merupakan suatu Class),kita
akan memperkenalkan mengenai pada bagian ini. String mewakili tipe data yang terdiri atas
beberapa karakter. Mereka tidak termasuk tipe data primitif, melainkan suatu class.
Mereka memiliki literal yang terdapat diantara tanda double quotes(“”).
Sebagai contoh,
String message=“Hello world!”
Integral – byte, short, int & long
Tipe data integral dalam Java menggunakan tiga bentuk- yaitu desimal, oktal atau
heksadesimal. Contohnya,
2 //nilai desimal 2
077 //angka 0 pada awal pernyataan mengindikasikan nilai oktal
0xBACC //karakter 0x mengindikasikan nilai heksadesimal
Tipe-tipe integral memiliki default tipe data yaitu int. Anda dapat merubahnya ke bentuk
long dengan menambahkan huruf l atau L. Tipe data integral memiliki range sebagai
berikut:
Integer Length Name or Type Range
8 bits byte -27 to 27-1
16 bits short -215 to 215-1
32 bits int -231 to 231-1
64 bits long -263 to 263-1
Tabel 1: Tipe-tipe integral dan range-nya
Petunjuk Penulisan Program:
Dalam mendefinisikan suatu nilai long, lowercase L tidak dianjurkan karena sangat sulit
untuk membedakan dari digit 1.
Floating Point – float dan double
Tipe Floating point memiliki double sebagai default tipe datanya. Floating-point literal
termasuk salah satunya desimal point atau salah satu dari pilihan berikut ini,
E or e //(add exponential value)
F or f //(float)
D or d //(double)
Contohnya adalah,
3.14 //nilai floating-point sederhana (a double)
6.02E23 //A nilai floating-point yang besar
2.718F //A nilai float size sederhana
123.4E+306D //A nilai double yang besar dengan nilai redundant D
Pada contoh yang ditunjukkan diatas, 23 setelah E pada contoh kedua bernilai positif.
Contoh tersebut sama dengan 6.02E+23. Tipe data Floating-point memiliki range sebagai
berikut:
Panjang Float Nama atau Tipe Range
32 bits float -231 to 231-1
64 bits double -263 to 263-1
Table 2: Tipe Floating point dan range nya
Variabel
Variabel adalah item yang digunakan data untuk menyimpan pernyataan objek.
Variabel memiliki tipe data dan nama. Tipe data menandakan tipe nilai yang dapat
dibentuk oleh variabel itu sendiri. Nama variabel harus mengikuti aturan untuk identifier.
Deklarasi dan Inisialisasi Variabel
Untuk deklarasi variabel adalah sebagai berikut,
<data tipe> <name> [=initial value];
Catatan: Nilainya berada diantara <> adalah nilai yang disyaratkan, sementara nilai dalam
tanda [] bersifat optional.
Berikut ini adalah contoh program yang mendeklarasikan dan menginisialisasi beberapa
variabel,
public class VariableSamples
{
public static void main( String[] args ){
//deklarasi tipe data dengan nama variable
// result dan tipe data boolean
boolean result;
//deklarasi tipe data dengan nama variabel
// option dan tipe data char
char option;
option = 'C'; //menandai 'C' sebagai option
//deklarasi tipe data dengan nama variabel
//grade, double tipe data dan telah di inisialisasi
//to 0.0
double grade = 0.0;
}
}
Petunjuk Penulisan Program:
1. Sangat baik untuk menginisialisasi variabel yang Anda buat seperti Anda
mendeklarasikannya.
2. Gunakan nama yang bersifat menggambarkan deskriptif untuk variabel yang Anda buat,
jika Anda ingin mempunyai variabel yang terdiri atas nilai siswa, beri nama dengan nama
grade dan jangan hanya beberapa huruf random yang Anda pilih.
3. Deklarasikan satu variabel tiap baris kode. Sebagai contoh , deklarasi variabel adalah
sebagai berikut,
double exam=0;
double quiz=10;
double grade = 0;
Bentuk yang lebih disukai ketika melakukan deklarasi adalah,
double exam=0, quiz=10, grade=0;
Menampilkan Data Variabel
Untuk mengeluarkan nilai dari variabel yang diinginkan, kita dapat menggunakan perintah
sebagai berikut,
System.out.println()
System.out.print()
Berikut ini adalah contoh program,
public class OutputVariable
{
public static void main( String[] args ){
int value = 10;
char x;
x = ‘A’;
System.out.println( value );
System.out.println( “The value of x=” + x );
}
}
Program tersebut akan mengeluarkan teks berikut pada layar,
10
The value of x=A
System.out.println() vs. System.out.print()
Apa yang membedakan diantara perintah System.out.println() and System.out.print()?
Yang pertama menambahkan baris baru pada akhir data untuk dikeluarkan, sementara
selanjutnya tidak.
Perhatikan pernyataan tersebut,
System.out.print("Hello ");
System.out.print("world!");
Pernyataan tersebut akan menghasilkan output berikut ini pada layar,
Hello world!
Sekarang perthatikan pernyataan berikut,
System.out.println("Hello ");
System.out.println("world!");
Pernyataan ini akan menghasilkan output sebagai berikut pada layar,
Hello
world!
Variabel Reference dan Variabel Primitif
Sekarang kita akan membedakan dua tipe variabel yang dimiliki oleh program Java. Ada
variabel reference dan variabel primitif .
Variabel primitif adalah variabel dengan tipe data primitif. Mereka menyimpan data dalam
lokasi memori yang sebenarnya dimana variabel tersebut berada.
Variabel Reference adalah variabel yang menyimpan alamat dalam lokasi memori. Yang
menunjuk ke lokasi memori dimana data sebenarnya berada. Ketika Anda mendeklarasikan
variabel pada class tertentu, Anda sebenarnya mendeklarasikan reference variable dalam
bentuk objek dalam classnya tersebut.
Sebagai contoh, Apabila kita mempunyai dua variabel dengan tipe data int dan String.
int num = 10;
String name = "Hello"
Dimisalkan ilustrasi yang ditunjukkan dibawah ini adalah memori yang ada pada komputer
Anda, dimana Anda memiliki alamat dari setiap sel memorinya, nama variabel dan datanya
terbentuk sebagai berikut.
Memory
Address
Variable
Name
Data
1001 num 10
: :
1563 name Address(2000)
:
:
::
2000 "Hello"
Seperti yang dapat Anda lihat, untuk variable primitif num, datanya berada dalam lokasi
dimana variabel berada. Untuk reference variable name, variabel hanya menunjuk alamat
dimana data tersebut benar-benar ada.
Operator
Dalam Java, ada beberapa tipe operator. Ada operator aritmatika, operator relasi, operator
logika, dan operator kondisi. Operator ini mengikuti bermacam-macam prioritas yang pasti
sehingga compilernya akan tahu yang mana operator untuk dijalankan lebih dulu dalam
kasus beberapa operator yang dipakai bersama-sama dalam satu pernyataan.
4.10.1 Operator Aritmatika
Berikut ini adalah dasar operator aritmatika yang dapat digunakan untuk membuat suatu
program Java,
Operator Penggunaan Keterangan
+ op1 + op2 Menambahkan op1 dengan op2
* op1 * op2 Mengalikan op1 dengan op2
/ op1 / op2 Membagi op1 dengan op2
% op1 % op2 Menghitung sisa dari pembagian op1
dengan op2
- op1 - op2 Mengurangkan op2 dari op1
Sekian Postingan Saya Kali ini
Mungkin jika ada yang kurang dari artikel saya anda bisa komen di bawah tentang artikel perograman java kali ini.
Terimakasih Banyak.
Langganan:
Postingan (Atom)