Subscribe For Free Updates!

We'll not spam mate! We promise.

Program Acak Huruf java

Best Rapidshare Search

package cobacoba;
import java.util.Random;
import javax.swing.JOptionPane;
class DemoString
{
    Random r = new Random();
    private String kata;

    public DemoString(String kata) {
        this.kata = kata;
    }

    public String getKata() {
        return kata;
    }

    void balikKata()
    {
        String temp="";//String temp ini nantinya akan digunakan untuk menampung kata yg sudah dibalik (penampung sementara)
        for(int i=kata.length()-1;i>=0;i--)
            temp=temp+kata.charAt(i);
        kata=temp;//String yang sudah dibalik (temp) diinisialisakan ke kata
        System.out.println("Setelah dibalik menjadi "+kata);
    }
    void formatString()
    {
        String temp=""+kata.toUpperCase().charAt(0);// String temp awalnya berisi huruf yg diambil dari indek k-0 dari kata yang telah dirubah ke kapital
        for(int i=1;i            temp=temp+kata.toLowerCase().charAt(i);//huruf pada kata diperkecil dan diambil char indek ke-i kemudian tambahkan ke temp
        kata=temp;//String yang sudah diformat (temp) diinisialisasikan ke kata
        System.out.println("Setelah dirubah formatnya menjadi "+kata);
    }
    void acak(){
        String temp="";
        int isiRandom;
        int ka=0;
        boolean lanjut=true;
        boolean[] ket = new boolean[kata.length()];
        for(int i=0;i            ket[i]=false;
        }
        while(lanjut){
            isiRandom=r.nextInt(kata.length());
            if(ket[isiRandom]==false){
                temp+=kata.charAt(isiRandom);
                ket[isiRandom]=true;
                ka++;
            }
            if(ka>=kata.length())
                lanjut=false;
        }
            System.out.println("Setelah diacak : "+temp);
    }

}
public class Main {

 
    public static void main(String[] args) {
    DemoString op = new DemoString(JOptionPane.showInputDialog(null, "Masukkan kata : "));
       

        System.out.println("kata : "+op.getKata()+"\n");

        op.balikKata();
        op.formatString();
        op.acak();
    }
}

koding java Metode Gaus

package program;
import java.text.DecimalFormat;



public class gausbiasa {
double penyebut,pembilang;
    int pembagi=1;
    DecimalFormat des = new DecimalFormat("0.00");
    double matrik[][] = {
            {6,3,46,8,80},
            {4,46,3,6,45},
            {1,3,2,12,30},
            {11,-3,20,12,33}};
    double[] hasil=new double[matrik.length];//array x1,x2,...xn

    //method untuk menampilkan matrik
    void tampilArray(double[][] matrik){
        for(int l=0;l            for(int m=0;m<=matrik.length;m++){
                System.out.print(des.format(matrik[l][m])+"\t");
            }
            System.out.println("");
        }
        System.out.println("");
    }

    void proses(){
    //menampilkan matrik awal
       tampilArray(matrik);

    //proses perhitungan gauss
        for(int i=0;i            penyebut=matrik[i][i];
            for(int j=(i+1);j                pembilang=matrik[j][i];
                for(int k=0;k<=matrik.length;k++){
                    matrik[j][k]=matrik[j][k]-(pembilang/penyebut*matrik[i][k]);

                }
            }
     //menampilkan matrik tiap perubahan
     tampilArray(matrik);
     }

        //proses penyulihan mundur
        double atas;
        for(int i=hasil.length-1;i>=0;i--){
            atas=matrik[i][hasil.length];
         for(int j=hasil.length-1;j>=0;j--){
                if(j==i)
                    pembagi=i;
                else
                    atas=atas-matrik[i][j]*hasil[j];

            }
            hasil[i]=atas/matrik[pembagi][pembagi];
            System.out.println("x"+(i+1)+" : "+des.format(hasil[i]));
        }

    }
  public static void main(String[] args) {
        gausbiasa mg = new gausbiasa();
        mg.proses();
 
}
}


versi saya biar lebih gampang brow

package program;
import java.text.DecimalFormat;

public class metodeGauss {
    public static void main(String[] args) {
     DecimalFormat set = new DecimalFormat("0.00");
        double penyebut = 0;
System.out.println("Bentuk Persamaan");
System.out.println("----------------");
 double [][] mat1 = {
    {5,  3,  -45,  8,  5 },
    {4,  45,  -3,  5,  51},
    {1,  3,  -2,  10,  20},
    {5, -45,  48, 5,  26}
};
    for (int i=0;i        penyebut =mat1 [i][i];
            for (int j=0; j<=mat1.length;j++){
                System.out.print(set.format(mat1[i][j])+"\t");
        }
    System.out.print(" ");
    System.out.println("penyebut : "+set.format(penyebut));
    }
        System.out.println("");
        System.out.println("==================================================================================");
        System.out.println("");
        System.out.println("Hasil eliminasi tahap awal");
        System.out.println("--------------------------");

        double [][] mat2 = new double [4][5];
mat2 [0][0]= mat1[0][0]; mat2 [0][1]=mat1[0][1]; mat2[0][2]=mat1[0][2]; mat2[0][3]=mat1[0][3]; mat2[0][4]=mat1[0][4];

mat2 [1][0]=mat1[1][0]-(mat1[1][0]/mat1[0][0])*mat1[0][0]; mat2 [1][1]=mat1[1][1]-(mat1[1][0]/mat1[0][0])*mat1[0][1]; mat2 [1][2]=mat1[1][2]-(mat1[1][0]/mat1[0][0])*mat1[0][2];
mat2 [1][3]=mat1[1][3]-(mat1[1][0]/mat1[0][0])*mat1[0][3]; mat2 [1][4]=mat1[1][4]-(mat1[1][0]/mat1[0][0])*mat1[0][4];

mat2 [2][0]=mat1[2][0]-(mat1[2][0]/mat1[0][0])*mat1[0][0]; mat2 [2][1]=mat1[2][1]-(mat1[2][0]/mat1[0][0])*mat1[0][1]; mat2 [2][2]=mat1[2][2]-(mat1[2][0]/mat1[0][0])*mat1[0][2];
mat2 [2][3]=mat1[2][3]-(mat1[2][0]/mat1[0][0])*mat1[0][3]; mat2 [2][4]=mat1[2][4]-(mat1[2][0]/mat1[0][0])*mat1[0][4];

mat2 [3][0]=mat1[3][0]-(mat1[3][0]/mat1[0][0])*mat1[0][0]; mat2 [3][1]=mat1[3][1]-(mat1[3][0]/mat1[0][0])*mat1[0][1]; mat2 [3][2]=mat1[3][2]-(mat1[3][0]/mat1[0][0])*mat1[0][2];
mat2 [3][3]=mat1[3][3]-(mat1[3][0]/mat1[0][0])*mat1[0][3]; mat2 [3][4]=mat1[3][4]-(mat1[3][0]/mat1[0][0])*mat1[0][4];

 for (int i=0;i        penyebut =mat2 [i][i];
            for (int j=0; j<=mat2.length;j++){
                System.out.print(set.format(mat2[i][j])+"\t");
        }
    System.out.print(" ");
    System.out.println("penyebut : "+set.format(penyebut));
    }
        System.out.println("");
        System.out.println("==================================================================================");
        System.out.println("");
        System.out.println("Hasil eliminasi tahap kedua");
        System.out.println("---------------------------");

         double [][] mat3 = new double [4][5];
mat3 [0][0]= mat2[0][0]; mat3 [0][1]=mat2[0][1]; mat3[0][2]=mat2[0][2]; mat3[0][3]=mat2[0][3]; mat3[0][4]=mat2[0][4];

mat3 [1][0]=mat2[1][0]; mat3 [1][1]=mat2[1][1]; mat3 [1][2]=mat2[1][2]; mat3 [1][3]=mat2[1][3]; mat3 [1][4]=mat2[1][4];

mat3 [2][0]=mat2 [2][0]; mat3 [2][1]=mat2[2][1]-(mat2[2][1]/mat2[1][1])*mat2[1][1]; mat3 [2][2]=mat2[2][2]-(mat2[2][1]/mat2[1][1])*mat2[1][2];
mat3 [2][3]=mat2[2][3]-(mat2[2][1]/mat2[1][1])*mat2[1][3]; mat3 [2][4]=mat2[2][4]-(mat2[2][1]/mat2[1][1])*mat2[1][4];

mat3 [3][0]=mat2 [2][0]; mat3 [3][1]=mat2[3][1]-(mat2[3][1]/mat2[1][1])*mat2[1][1]; mat3 [3][2]=mat2[3][2]-(mat2[3][1]/mat2[1][1])*mat2[1][2];
mat3 [3][3]=mat2[3][3]-(mat2[3][1]/mat2[1][1])*mat2[1][3]; mat3 [3][4]=mat2[3][4]-(mat2[3][1]/mat2[1][1])*mat2[1][4];

 for (int i=0;i        penyebut =mat3 [i][i];
            for (int j=0; j<=mat3.length;j++){
                System.out.print(set.format(mat3[i][j])+"\t");
        }
    System.out.print(" ");
    System.out.println("penyebut : "+set.format(penyebut));
    }
        System.out.println("");
        System.out.println("==================================================================================");
        System.out.println("");
        System.out.println("Hasil eliminasi tahap ketiga");
        System.out.println("----------------------------");

          double [][] mat4 = new double [4][5];
mat4 [0][0]= mat3[0][0]; mat4 [0][1]=mat3[0][1]; mat4[0][2]=mat3[0][2]; mat4[0][3]=mat3[0][3]; mat4[0][4]=mat3[0][4];

mat4 [1][0]=mat3[1][0]; mat4 [1][1]=mat3[1][1]; mat4 [1][2]=mat3[1][2]; mat4 [1][3]=mat3[1][3]; mat4 [1][4]=mat3[1][4];

mat4 [2][0]=mat3 [2][0]; mat4 [2][1]=mat3[2][1]; mat4 [2][2]=mat3[2][2]; mat4 [2][3]=mat3[2][3]; mat4 [2][4]=mat3[2][4];

mat4 [3][0]=mat3 [2][0]; mat4 [3][1]=mat3[3][1]; mat4 [3][2]=mat3[3][2]-(mat3[3][2]/mat3[2][2])*mat3[2][2];
mat4 [3][3]=mat3[3][3]-(mat3[3][2]/mat3[2][2])*mat3[2][3]; mat4 [3][4]=mat3[3][4]-(mat3[3][2]/mat3[2][2])*mat3[2][4];

 for (int i=0;i        penyebut =mat4 [i][i];
            for (int j=0; j<=mat4.length;j++){
                System.out.print(set.format(mat4[i][j])+"\t");
        }
    System.out.print(" ");
    System.out.println("penyebut : "+set.format(penyebut));
    }
        System.out.println("");
        System.out.println("==================================================================================");
        System.out.println("");

        System.out.println("5x1 + 3x2 - 45x3 + 8x4 = 5");
        System.out.println(" 42,6x2 + 33x3 - 1,4x4 = 47");
        System.out.println("       5,14x3 + 8,48x4 = 16,35");
        System.out.println("            - 219,29x4 = -340,13");
        System.out.println("");
        System.out.println("Maka nilai x1, x2, x3, dan x4 adalah :");
        System.out.println("");
        System.out.println("x1 = 3,712872844 ");
        System.out.println("x2 = 0,672427929 ");
        System.out.println("x3 = 0,62200127 ");
        System.out.println("x4 = 1,55105112 ");
}
 }

Koding Geser Huruf Java

ArrayList

package strukturdata;
import java.util.ArrayList;
public class StrukturData {
public static void main(String[] args) {
ArrayList arLis = new ArrayList();
arLis.add(4);
arLis.add("zainul");
arLis.add(3.0999);
System.out.println(arLis);
System.out.println("size arLis :"+arLis.size());
System.out.println(arLis.get(1));
arLis.add(1, "OOP");
System.out.println(arLis);
}
}

Output :
[4, zainul, 3.0999]
size arLis :3
zainul
[4, OOP, zainul, 3.0999]

JAVA LinkedList

package strukturdata;
import java.util.LinkedList;
/**
*
* @author LENOVO
*/
public class linkedlist {
public static void main(String[] args) {
LinkedList linklis1 = new LinkedList();
LinkedList linklis2 = new LinkedList();
linklis1.add(1);
linklis1.add(3);
linklis1.add("isi linklis1");
System.out.println(linklis1);

linklis2.add(8);
linklis2.add(3);
linklis2.add("isi linklis2");
System.out.println(linklis2);

linklis1.addAll(linklis2);
System.out.println("add all : "+linklis1);
Object lilisclone = linklis1.clone();
linklis2.add(lilisclone);
System.out.println("lilisclone : "+lilisclone);
System.out.println("linklis2 : "+linklis2);
System.out.println("linklis1 : "+linklis1);
linklis2.removeAll(linklis1);
System.out.println("removeall : "+linklis1);
System.out.println("elemen : "+linklis1.element());
System.out.println("get : "+linklis1.get(2));
}
}

Kelas dan objek java

kelas : kendaraan
Deskripsi:  kelas kendaraan yg dimaksud disini adalah kendaraan secara umum.
Atribut:
1. Kapasitas Bahan bakar
2. Volume bahan bakar
3. arah
4. kecepatan
5. status
Method:
1. isi bahan bakar
2. tambah kecepatan
3.kurangi kecepatan
4. belok
5. hidupkan mesin
6. matikan mesin

package praktikumpbo;

/**
 *
 * @author Naufal Syauqi
 */
public class kendaraan_11622045 {
public double kapasitasBB;
public double volumeBB;
public String arah;
public double kecepatan;
public String status;

public double isiBB (double isi){
double sisa;
if (volumeBB + isi <= kapasitasBB){
    volumeBB += isi;
    sisa=0;
}else {
    volumeBB = kapasitasBB;
    sisa = isi - (kapasitasBB-volumeBB);
};
return sisa;
};

public void belok (String belokan){
if (belokan == "kanan"){
    if (arah=="timur"){
        arah="timur";
    }else if (arah=="timur"){
        arah="selatan";
    }else if (arah=="selatan"){
        arah="barat";
    }else if (arah=="barat"){
        arah="utara";
    }
}else if (belokan=="kiri"){
    if (arah=="utara"){
        arah="barat";
    }else if(arah=="barat"){
        arah="selatan";
    }else if (arah=="selatan"){
        arah="timur";
    }else if (arah=="timur"){
        arah="utara";
    }
};
};
public void tambahspeed(int tambah){
    kecepatan+=tambah;
};
public void kurangispeed(int kurang){
    kecepatan+=kurang;
};
public void hidupkanmesin(){
    status ="hidup";
    kecepatan=0;
};
public void matikanmesin(){
    status="mati";
    kecepatan=0;
};
}

Kelas kedua

package praktikumpbo;

/**
 *
 * @author Naufal Syauqi
 */
public class teskendaraan_11622045 {
    public static void main(String[] args) {
        kendaraan_11622045 angkutan = new kendaraan_11622045();
        angkutan.arah="barat";
        angkutan.kapasitasBB=15;
        angkutan.isiBB(3.5);
        angkutan.hidupkanmesin();
        angkutan.tambahspeed(10);
        System.out.println("----------------------------------");
        System.out.println("informasi kendaraan\"angkutan\" \n");
        System.out.println("terisi bahan bakar : "+angkutan.volumeBB+"\n");
        System.out.println("status kendaraan : "+angkutan.status+"\n");
        System.out.println("kecepatan saat ini : "+angkutan.kecepatan+"\n");
        System.out.println("bergerak ke : "+angkutan.arah+"\n");
        angkutan.belok("kanan");
        System.out.println("-----------------------------\n");
        System.out.println("informasi kendaraan \"angkutan\" saat ini \n");
        System.out.println("terisi bahan bakar : "+angkutan.volumeBB+"\n");
        System.out.println("status kendaraan : "+angkutan.status+"\n");
        System.out.println("kecepatan saat ini : "+angkutan.kecepatan+"\n");
        System.out.println("bergerak ke : "+angkutan.arah+"\n");
        angkutan.tambahspeed(25);
        angkutan.belok("kanan");
        System.out.println("-------------------------------\n");
        System.out.println("informasi kendaraan \"angkutan\" saat ini \n");
        System.out.println("terisi bahan bakar : "+angkutan.volumeBB+"\n");
        System.out.println("status kendaraan : "+angkutan.status+"\n");
        System.out.println("kecepatan saat ini : "+angkutan.kecepatan+"\n");
        System.out.println("bergerak ke : "+angkutan.arah+"\n");
        angkutan.matikanmesin();
        System.out.println("--------------------------------\n");
        System.out.println("informasi kendaraan \"angkutan\" saat ini \n");
        System.out.println("terisi bahan bakar : "+angkutan.volumeBB+"\n");
        System.out.println("status kendaraan : "+angkutan.status+"\n");
        System.out.println("kecepatan saat ini : "+angkutan.kecepatan+"\n");
        System.out.println("bergerak ke : "+angkutan.arah+"\n");
    }
}

Hasil koding java metode Gaus

run:
Bentuk Persamaan
---------------------
5,00        3,00        -45,00      8,00        5,00         penyebut : 5,00
4,00        45,00      -3,00        5,00        51,00         penyebut : 45,00
1,00        3,00        -2,00        10,00      20,00         penyebut : -2,00
5,00        -45,00     48,00      5,00        26,00         penyebut : 5,00

==================================================================================

Hasil eliminasi tahap awal
--------------------------
5,00        3,00        -45,00        8,00          5,00         penyebut : 5,00
0,00        42,60        33,00        -1,40        47,00         penyebut : 42,60
0,00        2,40             7,00        8,40         19,00         penyebut : 7,00
0,00        -48,00        93,00        -3,00       21,00         penyebut : -3,00

==================================================================================

Contoh tugas operasi sistem bilangan


1)      Konversikan bilangan dibawah ini kebasis yang setara!
A.   11011,101112 = ………..10
B.   237,84610 = …………2
C.   1000001111112 = ……………8……………16
D.   4D2E16 = ………..10

2)      Dengan menggunakan aturan operasi bilangan, hitung operasi bilangan dibawah ini!
A.    101101 + 100111
B.     101011 – 111001
C.     1110  1101
D.    11011101 : 101

JAWAB
1)      A.     11011,101112 = 1.24 + 1.23 + 0.22 + 1.21 + 1.20 + 1.2-1 + 0.2-2 + 1.2-3 + 1.2-4  + 1.2-5
               = 16 + 8 + 0 + 2 + 1 + 0,5 + 0 + 0,125 + 0,0625 + 0,03125
               = 27,7187510

MAKALAH PANCASILA SEBAGAI PEMERSATU BANGSA









PANCASILA SEBAGAI PEMERSATU BANGSA











MAKALAH








Oleh: Rachmat Susatyo













WORKSHOP KESEJARAHAN Pembelajaran Sejarah dalam Pengembangan Jatidiri Bangsa” Medan, 28-31 Mei 2008

Koding Java Matriks Transpose

Best Rapidshare Search
package javaapplication1;


public class Main {

    public static void main(String[] args) {
      int [][]mat1 = {{6,2,2},{0,4,5}};
      int [][]mat2 = {{3,0},{5,1},{1,1}};
      int [][]mat3 = new int [2][2];
     
      System.out.println("matriks 1");
      System.out.println("6 2 2");
      System.out.println("0 4 5");

      System.out.println("matriks 2");
      System.out.println("3 0");
      System.out.println("5 1");
      System.out.println("1 1");

Contoh Resensi


Judul : Pelatihan Shalat Khusyu’ (Shalat Sebagai Meditasi Tertinggi Dalam Islam)
Penulis : Abu Sangkan
Penerbit : Baitul Ihsan
Tahun Terbitan : Agustus 2004
Ukuran Buku: 19,5 cm x 19,5 cm
Tebal Buku : 133 halaman
Penyunting : Mardianto B. Santoso, Yusdeka

Abu Sangkan lahir tanggal 8 Mei 1965. Sejak kecil hingga tamat sekolah dasar tinggal bersama orang tua di pinggiran pantai selat Bali, desa Alasbuluh, Banyuwangi. Sekolah Menengah Pertama tamat di Banyuwangi, kemudian dilanjutkan sekolah perkebunan (SPbMA) di Jember namun tidak selesai, karena tidak betah dengan urusan cangkul mencangkul. Lalu kabur ke Jakarta tanpa tujuan yang jelas. Itulah sepenggal kisah hidup Abu Sangkan hingga tercipta suatu metode sholat khusyu' dalam bukunya Pelatihan Shalat Khusyu'.
Sekilas memang buku ini terlihat biasa seperti buku-buku pelatihan shalat yang lain. Namun ketika dipahami betul, buku bercover gambar orang shalat ini menyajikan suatu  Metode shalat khusyu' yang dikemas begitu sederhana dan diramu dengan dalil serta hadits yang kuat akan pentingnya khusyu' dalam shalat.

Komponen Mainbord dan Fungsinya


MAKALAH FLIP – FLOP / BISTABLE

Best Rapidshare Search

MAKALAH
FLIP – FLOP / BISTABLE


 





UNIVERSITAS MUHAMMADIYAH GRESIK
MATA KULIAH : ELEKTRONIKA DIGITAL
TEKNIK INFORMATIKA A SORE
SEMESTER 1
KELOMPOK 4 :
11622017  ZULFAN EFENDY
11622034  SANDY THOYIBUL AMIN
11622045  NAUFAL SYAUQI
11622022  NOVIZA BAHRI
11622040  ALFIN NUR FAIZAH
8622023    MOHAMMAD YANUAR EFENDY
11622028  AHMAD SUBAN HISBUN NASOR
11622014  TRIAN WAHYU P
11622020  FRIN DWI SETIYA RAHAYU
11622036  SEPTIAN PINAR RIANDIKA
A.     PENGERTIAN FLIP/FLOP/ BISTABLE
Flip-flop adalah rangkaian digital yang digunakan untuk menyimpan satu bit secara semi permanen sampai ada suatu perintah untuk menghapus atau mengganti isi dari bit yang disimpan. Prinsip dasar dari flip-flop adalah suatu komponen elektronika dasar seperti transistor, resistor dan dioda yang di rangkai menjadi suatu gerbang logika yang dapat bekerja secara sekuensial. Nama lain dari flip-flop adalah multivibrator bistabil.
Multivibrator adalah suatu rangkaian regeneratif dengan dua buah piranti aktif, yang dirancang sedemikian sehingga salah satu piranti bersifat menghantar pada saat piranti lain terpancung. Multivibrator dapat menyimpan bilangan biner, mencacah pulsa, menyerempakkan operasi-operasi aritmatika, serta melaksanakan fungsi-fungsi pokok lainnya dalam sistem digital. Ada tiga jenis multivibrator,yaitu : astabil, monostabil, dan bistabil. Flip flop yaitu multivibrator yang keluarannya adalah suatu tegangan rendah atau tinggi, 0 atau 1. Keluaran ini tetap rendah atau tinggi; untuk mengubahnya, harus didrive oleh suatu masukan yang disebut pemicu (triger). Sampai datangnya pemicu, tegangan keluaran tetap rendah atau tinggi untuk selang waktu yang tak terbatas. Salah satu jenis flip-flop adalah flip-flop RS. Flip-flop ini mempunyai dua masukan dan dua keluaran, di mana salah satu keluarannya (y ) berfungsi sebagai komplemen. Sehingga flipflop ini disebut juga rangkaian dasar untuk membangkitkan sebuah variabel beserta komplemennya. Flip-flop RS dapat dibentuk dari kombinasi dua gerbang NAND atau kombinasi dua gerbang NOR.

B.      MACAM MACAM FLIP/FLOP/BISTABLE
1.      Flip – Flop RS
Flip-flop RS pada simbol ini memiliki input aktif low/nol yang ditunjukkan dengan adanya gelembung-gelembung kecil pada input R dan S. Tidak seperti gerbang logika, flip-flop memiliki dua output komplementer. Output tersebut diberi label Q dan Q. Output Q dianggap merupakan output normal, dan dalam kondisi normal kedua output selalu merupakan komplementer. Karena fungsi flip-flop memegang data sementara, maka flip-flop ini sering disebut RS Latch Flip-Flop. yang lain. RS-FF adalah flip-flop dasar yang memiliki dua masukan yaitu R (Reset) dan S (Set). Bila S diberi logika 1 dan R diberi RS Flip-Flop yaitu rangkaian Flip-Flop yang mempunyai 2 jalan keluar Q dan Q (atasnya digaris). Simbol-simbol yang ada pada jalan keluar selalu berlawanan satu dengan logika 0, maka output Q akan berada pada logika 0 dan Q not pada logika 1. Bila R diberi logika 1 dan S diberi logika 0 maka keadaan output akan berubah menjadi Q berada pada logik 1 dan Q not pada logika 0.
Sifat paling penting dari Flip-Flop adalah bahwa sistem ini dapat menempati salah satu dari dua keadaan stabil yaitu stabil I diperoleh saat Q =1 dan Q not = 0, stabil ke II diperoleh saat Q=0 dan Q not = 1 yang diperlihatkan pada gambar berikut:





Gambar 2. RS-FF yang disusun dari gerbang NAND
Tabel Kebenaran:
S
B
Q
Q
Keterangan
0
0
1
1
Terlarang
0
1
1
0
Set (memasang)
1
1
1
0
Stabil I
1
0
0
1
Reset (melepas)
1
1
0
1
Stabil II
0
0
1
1
Terlarang
1
1
Qn
Qn
Kondisi memori (mengingat)
Yang dimaksud kondisi terlarang yaitu keadaaan yang tidak diperbolehkan kondisi output Q sama dengan Q not yaitu pada saat S=0 dan R=0. Yang dimaksud dengan kondisi memori yaitu saat S=1 dan R=1, output Q dan Qnot akan menghasilkan perbedaan yaitu jika Q=0 maka Qnot=1 atau sebaliknya jika Q=1 maka Q not =0.
2.      D FLIP – FLOP

D flip-flop adalah RS flip-flop yang ditambah dengan suatu inventer pada reset inputnya. Sifat dari D flip-flop adalah bila input D (Data) dan pulsa clock berlogik 1, maka output Q akan berlogik 1 dan bilamana input D berlogik 0, maka D flip-flop akan berada pada keadaan reset atau output Q berlogik 0. Flip-flop D hanya memiliki input data tunggal (D) dan input detak (CK). Flip-flop D sering kali disebut juga sebagai flip-flop tunda. Nama ini menggambarkan operasi unit ini. Apapun bentuk input pada input data (D), input tersebut akan tertunda selama satu pulsa detak untuk mencapai output normal (Q). Data dipindahkan ke output pada transisi detak Low ke High.

Gambar 4. D flip-flop
Tabel Kebenaran:
D
Qn+1
0
1
0
1
· RS FLIP FLOP
RS Flip-flop adalah clocked RS-FF yang dilengkapi dengan sebuah terminal pulsa clock. Pulsa clock ini berfungsi mengatur keadaan Set dan Reset. Bila pulsa clock berlogik 0, maka perubahan logik pada input R dan S tidak akan mengakibatkan perubahan pada output Q dan Qnot. Akan tetapi apabila pulsa clock berlogik 1, maka perubahan pada input R dan S dapat mengakibatkan perubahan pada output Q dan Q not.
Gambar CRS flip flop



Tabel kebenarannya:
S
R
Qn +1
0
0
Qn
0
1
0
1
0
1
1
1
terlarang
Keterangan:
Qn = Sebelum CK
Qn +1 = Sesudah CK
3.      T- FLIP- FLOP
Rangkaian T flip-flop atau Togle flip-flop dapat dibentuk dari modifikasi clocked RSFF, DFF maupun JKFF. TFF mempunyai sebuah terminal input T dan dua buah terminal output Q dan Qnot. TFF banyak digunakan pada rangkaian Counter, frekuensi deviden dan sebagainya.


Gambar 5. T flip-flop

Tabel kebenaran
T
Q
0
0
1
0
0
1
1
1
0
0
1
0
0
1
1
1










4.      JK- FLIP FLOP
JK flip-flop sering disebut dengan JK FF induk hamba atau Master Slave JK FF karena terdiri dari dua buah flip-flop, yaitu Master FF dan Slave FF. Master Slave JK FF ini memiliki 3 buah terminal input yaitu J, K dan Clock. Sedangkan IC yang dipakai untuk menyusun JK FF adalah tipe 7473 yang mempunyai 2 buah JK flip-flop dimana lay outnya dapat dilihat pada Vodemaccum IC (Data bookc IC). Kelebihan JK FF terhadap FF sebelumnya yaitu JK FF tidak mempunyai kondisi terlarang artinya berapapun input yang diberikan asal ada clock maka akan terjadi perubahan pada output.

Gambar J-K flip flop
Tabel Kebenaran:
J
K
Qn+1
Keterangan
0
0
Qn
Mengingat
0
1
0
Reset
1
0
1
Set
1
1
Qn (strep)
Togle

C.      PEMICUAN FLIP- FLOP
Pada flip flop untuk menyerempakkan masukan yang diberikan kepada kedua masukannya maka diperlukan sebuah clock untuk memungkinkan hal itu terjadi. Clock disini yang dimaksud adalah sinyal pulsa yang beberapa kondisinya dapat digunakan untuk memicu flip flop untuk bekerja. Ada beberapa kondisi clock yang bisa digunakan untuk menyerempakkan kerja flip flop yaitu :
• Tepi naik : yaitu pada saat perubahan sinyal clock dari logika rendah (0) ke logika tinggi (1)
• Tepi turun : yaitu pada saat perubahan sinyal clock dari logika tinggi (1) ke logika rendah (0)
• Logika tinggi : yaitu pada saat sinyal clock berada dalam logika tinggi (1)
• Logika rendah : yaitu pada saat sinyal clock berada dalam logika rendah (0)
D.     SIMBOL SIMBOL PEMICUAN
Tabel eksitasi flip flop. Dibawah ini adalah karakteristik tabel dari berbagai type flip-flop. Nilai X menandakan bahwa nilainya dapat diisi kedua-duanya yaitu 0 dan 1.
C-S-R Flip Flop D Flip Flop
Q (t) Q (t+1) S R Q (t) Q (t+1) D
0 0 0 X 0 0 0
0 1 1 0 0 1 1
1 0 0 1 1 0 0
1 1 X 0 1 1 1
J-K Flip Flop T Flip Flop
Q (t) Q (t+1) J K Q (t) Q (t+1) T
0 0 0 X 0 0 0
0 1 1 X 0 1 1
1 0 X 1 1 0 1
1 1 X 0 1 1 0
E.      IC NE 55
Tepatnya IC 555 pertama kali dibuat oleh Signetics Corporation pada tahun 1971. IC timer 555 memberi solusi praktis dan relatif murah untuk berbagai aplikasi elektronik yang berkenaan dengan pewaktuan (timing). Terutama dua aplikasinya yang paling populer adalah rangkaian pewaktu monostable dan osilator astable. Jeroan utama komponen ini terdiri dari komparator dan flip-flop yang direalisasikan dengan banyak transistor.
Dari dulu hingga sekarang, prinsip kerja komponen jenis ini tidak berubah namun masing-masing pabrikan membuatnya dengan desain IC dan teknologi yang berbeda-beda. Hampir semua pabrikan membuat komponen jenis ini, walaupun dengan nama yang berbeda-beda. Misalnya National Semiconductor menyebutnya dengan LM555, Philips dan Texas Instrument menamakannya SE/NE555. Motorola / ON-Semi mendesainnya dengan transistor CMOS sehingga komsusi powernya cukup kecil dan menamakannya MC1455. Philips dan Maxim membuat versi CMOS-nya dengan nama ICM7555. Walaupun namanya berbeda-beda, tetapi fungsi dan pin diagramnya saling kompatibel satu dengan yang lainnya (functional and pin-to-pin compatible). Hanya saja ada beberapa karakteristik spesifik yang berbeda misalnya konsumsi daya, frekuensi maksimum dan sebagainya. Spesifikasi lebih detail biasanya dicantumkan pada datasheet masing-masing pabrikan. Dulu pertama kali casing dibuat dengan 8 pin T-package (tabular dari kaleng mirip transistor), namun sekarang lebih umum dengan kemasan IC DIP 8 pin.
IC pewaktu 555 adalah sebuah sirkuit terpadu yang digunakan untuk berbagai pewaktu dan multivibrator. IC ini didesain dan diciptakan oleh Hans R. Camenzind pada tahun 1970 dan diperkenalkan pada tahun 1971 oleh Signetics. Nama aslinya adalah SE555/NE555 dan dijuluki sebagai "The IC Time Machine". 555 mendapatkan namanya dari tiga resistor 5 kΩ yang digunakan pada sirkuit awal. IC ini sekarang masih digunakan secara luas dikarenakan kemudahannya, kemurahannya dan stabilitasnya yang baik. Sampai pada tahun 2008, diperkirakan sejuta unit diproduksi setiap tahun. Bergantung pada produsen, IC ini biasanya menggunakan lebih dari 20 transistor , 2 dioda dan 15 resistor dalam sekeping semikonduktor silikon yang dipasang pada kemasan DIP 8 pin. Spesifikasi ini merupakan tipe NE555. Pewaktu 555 lainnya mungkin memiliki spesifikasi yang berbeda, tergantung tingkat penggunaannya (militer, medis, penerbangan, dll.)
Arus keluaran maksimum
200 mA
Borosan daya maksimum
600 mW
Suhu kerja
0 to 70 °C


Tegangan catu (VCC)
4.5 hingga 15 V
Arus catu (VCC = +5 V)
3 hingga 6 mA
Arus catu (VCC = +15 V)
10 hingga 15 mA

F.       IC NE 556
IC 556 adalah peranti DIP 14 pin yang menggabungkan dua 555 dalam satu kemasan, susunan kakinya mirip 555 kecuali dua saluran catu yang digabungkan.
G.     IC M 7555
Pada dasarnya, 7555 versi daya-ultra-rendah dari 555, dan TLC555. 7555 membutuhkan pengawatan yang sedikit berbeda, menggunakan lebih sedikit komponen eksternal.
H.     GERANG DASAR
Gerbang (gate) dalam rangkaian logika merupakan fungsi yang menggambarkan hubungan antara masukan dan keluaran. Untuk menyatakan gerbang-gerbang tersebut biasanya digunakan simbol-simbol tertentu. Ada beberapa standar penggambaran simbol. Salah satu standar simbol yang populer adalah MIL-STD-806B yang dikeluarkan oleh Departemen Pertahanan Amerika Serikat untuk keperluan umum pada bulan Februari 1962. Untuk menunjukkan prinsip kerja tiap gerbang (atau rangkaian logika yang lebih kompleks) dapat digunakan beberapa cara. Cara yang umum dipakai antara lain adalah tabel kebenaran (truth table) dan diagram waktu (timing diagram). Karena merupakan rangkaian digital, tentu saja level kondisi yang ada dalam tabel atau diagram waktu hanya dua macam, yaitu logika 0 (low, atau false) dan logika 1 (atau high, atau true).
· IC 7404
Dengan menggunakan IC tipe 7404, berbeda dengan gerbang sebelumnya (AND & OR), gerbang NOT hanya mempunyai 1 input dan 1 output. Sehingga dalam IC terdapat 6 gerbang NOT, dengan 6 input dan 6 output. Operasi gerbang : Gerbang ini merupakan fungsi inverter dari input. Jadi jika input berharga 0 maka outputnya akan berharga 1 dan begitu pula sebaliknya, sehingga didapat persamaan :
Y = Ā.
· IC 7408
Gerbang-gerbang dasar sudah terkemas dalam sebuah IC (Integrated Circuit), untuk gerbang AND digunakan IC tipe 7408. Karena dalam hal ini akan digunakan masukan / input sebanyak 3 buah maka dengan menggabungkan 2 gerbang dapat diperoleh 3 input yang dimaksud (dengan cara menghubungkan output kaki 3 ke input kaki 4 atau lima seperti terlihat pada gambar di bawah. Gerbang dasar hanya mempunyai 2 harga yaitu 0 dan 1. Berharga 0 jika tegangan bernilai 0 - 0,8 Volt dan berharga 1 jika tegangan bernilai 2 - 5 Volt. Operasi gerbang : Jika semua input terhubung dengan ground atau semuanya terlepas maka outputnya akan berharga 0, sehingga lampu indicator tidak menyala. Begitu pula jika hanya salah satu terlepas dan input lainnya diberi tegangan input sebesar Vcc, lampu tetap tidak akan menyala. Lampu akan menyala jika semua input diberi tegangan sebesar Vcc, sehingga berharga 1.Dengan melihat tabel pada data percobaan, akan didapat persamaan pada output,
yaitu :Y = A • B • C
Y = (AB) C
· IC 7400
Dengan menggunakan IC tipe 7400, gerbang NAND mempunyai 2 input dan 1 output.
Operasi gerbang :
Gerbang NAND menghendaki semua inputnya bernilai 0 (terhubung dengan ground) atau salah satunya bernilai 1 agar menghasilkan output yang berharga 1. Sebaliknya jika Y = A • B semua input diberi harga 1 (masukan dari Vcc) maka outputnya akan berharga 0. Ini merupakan kebalikan dari operasi gerbang AND, sehingga didapat persamaan
· IC 7402
Gerbang ini menggunakan IC tipe 7402, yang memuat 4 gerbang NOR Operasi gerbang : Gerbang NOR merupakan kebalikan dari gerbang OR. Jadi output gerbang ini akan berharga 1 jika semua input berharga 0 (terhubung dengan ground). Persamaan yang didapat :Y = A + B ,Sesuai dengan Teori De Morgan maka persamaan ini bisa diubah menjadi persamaan : Y = A • B
· IC 7432
Gerbang ini sudah terkemas dalam IC tipe 7432. Sama dengan gerbang AND, gerbang OR hanya memiliki 2 buah input dan 1 output, sehingga dibutuhkan 2 gerbang untuk menjadikan 3 input dan 1 output. Operasi gerbang :
Pada output akan berharga 1 (indicator menyala) jika salah satu atau semua dari inputnya diberi masukan sebesar Vcc. Sebaliknya jika semua input diberi masukan dari ground atau terlepas, maka output akan berharga 0 (indicator tidak menyala.
Dengan melihat tabel pada data percobaan, akan didapat persamaan pada output , yaitu:
Y = A + B + C

· IC 7486
Gerbang ini menggunakan IC tipe 7486. Operasi gerbang : Gerbang EXOR berbeda dengan gerbang-gerbang OR. Output akan berharga 0 jika inputnya sama-sama 1 atau sama-sama 0. Dan akan berharga 1 jika salah satu input maupun output berharga 0 atau 1. Sehingga didapat persamaan sebagai berikut : Y = AB + AB
























Daftar Pustaka
one.indoskripsi.com/click/532/0 –
www.google.com
Wikipedia.org
ic2design.wordpress.com
www.scribd.com/doc/5813463/FlipFlop
www.electroniclab.com/index.php?