Persentase dengan Topik Pembahasan "FIFO"

Persentase dengan Topik Pembahasan "FIFO"


FIFO adalah bentuk algoritma penjadwalan yang dipengaruhi oleh siapa yang lebih awal meminta untuk di proses oleh CPU.Yang lebih awal meminta untuk di proses maka dialah yang akan di proses terlebih dahulu, tanpa melihat prioritas datanya ataupun waktu tunggu yang di butuhkan oleh proses tersebut. Kelemahan dari algoritma penjadwalan ini yaitu jika dalam proses eksekusi program membutuhkan waktu tunggu yanglama, maka prosesproses yang menunggu untuk di proses oleh CPU akan menunggu lebih lama hingga proses yang sedang di eksekusi selesai untuk di eksekusi. Sehingga dapat dikatakan bahwa Average Waiting Time (AWT) dari algoritma ini cukup besar  

Penjadwalan ini merupakan:
      – Penjadwalana non-preemptive
      – Penjadwalan tidak berprioritas
Dalam penjadwalan FIFO (First In First Out) :
-      Proses yang pertama kali minta jatah waktu untuk menggunakan CPU akan dilayani terlebih dahulu
-      Begitu proses mendapatkan jatah waktu CPU à proses dijalankan sampai selesai/ sampai proses tersebut melepaskannya, yaitu jika proses tersebut berhenti atau meminta I/O (Created by: Ika Sunarsih)

Penjadwalan ini dikatakan adil dalam arti resmi (dalam semantik/arti antrian, yaitu proses yang datangduluan, dilayani duluan juga), tapi dinyatakan tak adil karena job-jobyang perlu waktu lama membuat job-job pendek menunggu.Job job tak penting dapat membuat job-job penting menunggu.

FIFO jarang digunakan secara mandiri tapi dikombinasikan dengan skema lain,  misalnya :  keputusan berdasarkan prioritas proses. Untuk proses-proses berprioritas sama diputuskan berdasarkan FIFO.

Berdasarkan kriteria penilaian penjadwalan :        
•Fairness : Penjadwalan FIFO adil bila dipandang dari semantik antrian.
•Efesiensi: Penjadwalan FIFO sangat efesien 
•Waktu tanggap: Penjadwalan FIFO sangat jelek, tidak cocok untuk sistem interaktif apalagi waktu nyata. 
•Turn arround time :Penjadwalan FIFO jelek
Throughput : Penjadwalan FIFO jelek.
•Kelebihan:
(+) Merupakan metode scheduling paling sederhana
(+) Overhead kecil
(+) Dapat mencegah starvation
•Kekurangan:
(-) Proses yang pendek dapat dirugikan, bila urutan eksekusinya setelah proses yang panjang
–Service time proses Y adalah 1/100 dari proses X, tetapi normalized turnaround time-nya 100 kali lebih besar à sangat dirugikan

•Kekurangan: (lanjutan)
(-) FIFO cenderung menguntungkan proses processor-bound dibanding proses I/O-bound
•Proses processor-bound:
–Proses yang lebih sering melakukan perhitungan komputasi daripada mengakses I/O device
•Proses I/O-bound:
–Proses yang lebih banyak menggunakan I/O device daripada menggunakan prosesor
•Contoh:
–Bila proses I/O-bound berada di belakang proses processor-bound yang sedang dieksekusi à proses tersebut terpaksa harus menunggu meskipun saat itu I/O device sedang tidak digunakan (Create by Ika Sunarsih)

–Solusi: gabungkan dengan model prioritas


PERTANYAAN

1. Berikan satu contoh untuk penggunaan sistem FIFO

Jawab :
Pada Aplikasi Blackberry Messenger yang dapat digunakan  di IOS dan Android , BlackBerry menggunakan aturan First In First Out, jadi siapa yang pertama datang atau mendaftar, maka dia akan dilayani duluan. Aturan ini di terapkan karena basis dari pendaftaran adalah email. Jadi setelah pengguna mengnduh aplikasi dari BBM.com dari ponsel berbasis Androis atau IOS, dan kemudian meng-installnya, pengguna diminta mendaftar dengan mengirimkan email, pendaftaran dengan email inilah yang akan antri. Maka akan dilayani BlackBerry apabila siapa yang daftar duluan , maka akan di layani duluan.
Pada pengiriman pesan pun BlackBerry menggunakan sistem yang sama yaitu, apabila mengirim lebih dari 1



Contoh Perhitungan FIFO

Mengontrol Relay Via USB Menggunakan BASIC dan USB-1REL

USB-1REL adalah modul USB Relay yang memiliki 1 buah relay sebagai output. Dengan modul ini kita bisa mengendalikan kondisi 1 buah relay (on/off) melalui program komputer dengan antarmuka port USB.

Modul ini mengambil daya secara langsung dari port USB sehingga tidak membutuhkan catu daya eksternal. Oleh karenanya modul USB-1REL sangat mudah dan praktis digunakan.

Screenshot di samping adalah tampilan program Demo Kontrol USB-1REL yang dibuat menggunakan interpreter Bahasa BASIC gratisan JustBASIC V1.01. Program mengontrol relay USB-1REL dengan memanggil command-line toolUSB1RC.EXE.

Modul USB-1REL sangat cocok untuk aplikasi bel sekolah terprogram berbasis komputer. Dengan scheduler dan database sederhana maka cukuplah untuk membuat aplikasi bel sekolah terprogram yang sederhana namun berdayaguna.
Selain bel sekolah atau bel pabrik, USB-1REL juga bisa diaplikasikan untuk mengaktifkan dan mematikan extra-fan atau air-conditioner pada ruang server pada kurun-kurun waktu yang telah ditentukan (terprogram).

Pada tulisan ini kami berikan contoh program Demo Kontrol USB-1REL dengan beberapa fungsi tombol yakni:


Untuk menghasilkan delay program menggunakan fungsi TIMER. Berikut adalah kode program selengkapnya.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
'--- JB_USB1REL.BAS
'--- Demo pengontrolan modul relay USB-1REL



    nomainwin

    WindowWidth = 300
    WindowHeight = 355

    UpperLeftX=int((DisplayWidth-WindowWidth)/2)
    UpperLeftY=int((DisplayHeight-WindowHeight)/2)

    groupbox #main.groupbox1, " Relay Control: ", 15, 15, 170, 72
    button #main.btnRelayOn, "ON", [btnRelayOnClick], UL, 25, 40, 70, 30
    button #main.btnRelayOff, "OFF", [btnRelayOffClick], UL, 105, 40, 70, 30

    groupbox #main.groupbox2, " Relay Trigger/Off-Delay: ", 15, 100, 170, 196
    button #main.btnRelayOnFast, "ON-OFF Very Fast", [btnRelayFastClick], UL, 25, 130, 150, 30
    button #main.btnRelayOn50, "ON - 0.5s - OFF", [btnRelay50Click], UL, 25, 170, 150, 30
    button #main.btnRelayOn1, "ON - 1s - OFF", [btnRelay1Click], UL, 25, 210, 150, 30
    button #main.btnRelayOn5, "ON - 5s - OFF", [btnRelay5Click], UL, 25, 250, 150, 30

    button #main.btnExit, "EXIT", [btnExitClick], UL, 200, 20, 78, 277

    statictext  #main.telinks, "http://teknikelektrolinks.com", 14, 302, 200, 20

    open "JustBASIC - Demo Kontrol USB-1REL" for dialog as #main
    print #main, "trapclose [quit.main]"

    print #main, "font Arial 9 Bold"
    print #main.telinks, "!font Verdana 8"

    wait

[quit.main]
    close #main
    end

[btnRelayOnClick]    'Perform action for the button named 'btnRelayOn'
    run "USB1RC.EXE R1", hide
    wait

[btnRelayOffClick]    'Perform action for the button named 'btnRelayOff'
    run "USB1RC.EXE r1", hide
    wait

[btnRelayFastClick]
    run "USB1RC.EXE R1 r1", HIDE
    wait

[btnRelay50Click]
    run "USB1RC.EXE R1", hide
    timer 500, [tmr500ms]
    wait
    [tmr500ms]
    timer 0
    run "USB1RC.EXE r1", HIDE
    wait

[btnRelay1Click]
    run "USB1RC.EXE R1", hide
    timer 1000, [tmr1000ms]
    wait
    [tmr1000ms]
    timer 0
    run "USB1RC.EXE r1", hide
    wait

[btnRelay5Click]    'Perform action for the button named 'btnRelay1Off'
    run "USB1RC.EXE R1", hide
    timer 5000, [tmr5000ms]
    wait
    [tmr5000ms]
    timer 0
    run "USB1RC.EXE r1", hide
    wait

[btnExitClick]    'Perform action for the button named 'btnExit'
    Close #main
    wait

USB-1REL dilengkapi dengan CD program yang berisi contoh program dalam berbagai bahasa seperti BASIC, C, Delphi/Lazarus,  JustBASIC, Python, REBOL, VB/VB.NET. 

Credit :
 http://pcinterfacing.blogspot.com/2014/10/usb-1rel-adalah-modul-usb-relay-yang.html

Tugas Sistem Operasi







1. Sebutkan dua fungsi utama sistem operasi?
Jawab :
  • Sebagai Resource Manager
    • Sebagai pengatur sumber daya komputer, baik hardware maupun software agar dapat menjalankan perintah-perintah yang diberikan oleh pengguna.
    • Tugas utama Sistem Operasi sebagai resource manager adalah memantau penggunaan semua resources serta menerapkan aturan (policy) tertentu untuk menjalankan kerja komputer. Selain itu juga mengalokasikan resources yang diminta dan mengambil kembali (dealokasi) resource.
    • Sebagai Extended Machine (Virtual Machine)
      •  Menyembunyikan kompleksitas pemrograman hardware dari programmer atau user. Sehingga pengguna dapat melakukan kegiatan atau kerja dengan lebih mudah melalui tampilan user interface. Dan pengguna juga tidak direpotkan berkaitan dengan kegiatan-kegiatan yang mengatur resource sebuah komputer.
      • menyajikan fasilitas yang lebih mudah dan sederhana untuk menggunakan hardware 
    2. Apa yang dimaksud dengan multiprogrammin? Berikan dua alasan diadakannya multiprogramming!
    Jawab :

    Multi programming adalah suatu kemampuan dari sebuah sistem untuk melayani lebih dari satu program yang dijalankan sekaligus dalam satu komputer yang sama.
    Alasan diadakannya multiprogramming yaitu :
    • Saat ini banyak aplikasi yang dalam proses penjalanannya mengakses lebih dari satu program. Sehingga agar program tersebut dapat berjalan lebih optimal perlu sistem multiprogramming.
    • Memberikan efisiensi pekerjaan yang cukup tinggi, dengan mampu untuk menjalankan beberapa aplikasi secara bersamaan.
    • Kebutuhan user yang semakin tinggi dan kompleks maka memerlukan sistem multiprogramming. Contohnya, ketika seorang user melakukan pekerjaannya sekaligus mendengarkan musik untuk refreshing.


    3. Apa yang dimaksud dengan spooling? Apakah anda menganggap personal komputer harus memiliki spooling sebagai standar dasar di masa yang akan datang?
    Jawab :
    Spooling adalah membuat peripheral seolah-olah dapat digunakan bersama-sama sekaligus, dapat diakses secara simultan, yaitu dengan cara menyediakan beberapa partisi memori. Saat terdapat permintaan layanan peripheral, langsung diterima dan data disimpan dulu di memori yang disediakan (berupa antrian), kemudian dijadwalkan agar secara nyata dilayani oleh peripheral.
    Karena pada saat ini kebutuhan akan kecepatan kinerja komputer semkin besar, maka teknologi spooling mutlak untuk dikembangkan dan diaplikasikan di komputer. Dengan teknologi itu maka proses komputasi sebuah program akan lebih cepat ditangani dan dikerjakan.


    4. Pada awal perkembangan komputer, setiap byte data yang dibaca atau yang ditulis ditangani oleh CPU (tidak ada DMA-Direct Memory Access). Apa implikasinya struktur seperti ini terhadap konsep multiprogramming.
    Jawab :
    Bila sistem tersebut digunakan untuk melayani konsep multiprogramming, maka akan membutuhkan waktu yang lama dalam pemrosesannya. Dengan tidak ada memory pembantu proses maka proses pengaksesan data untuk diproses akan lama. Apalagi untuk kegiatan multiprogramming maka proses tersebut akan semakin lebih lama lagi. Oleh karena itu komputer pada awal perkembangannya tidak mampu untuk mengakomodasi konsep multiprogramming.
    Jadi implikasi dari tidak adanya DMA dalam pemrosesan komputer adalah pada waktu untuk pengerjaan (pemrosesan) informasi. Bahkan mungkin konsep multiprogramming tidak bisa diaplikasikan oleh sistem prosesor non DMA.

    5. Mengapa timesharing tidak tersebar luas pada generasi ke-2 komputer?
    Jawab :
    Karena varian dari multiprogramming, dimana tiap pemakai mempunyai satu terminal on-line dengan pemroses hanya memberi layanan pada pemakai yang aktif secara bergantian dengan cepat. Pemakai akan merasa dilayani terus menerus, padahal sebenarnya digilir persatuan waktu yang cukup singkat.


    6. Instruksi-instruksi manakah yang diperbolehkan dalam Mode Kernel :
    a. Disable all interupts.
    b. Read the time-of-day clock.
    c. Set the time-of-day clock.
    d. Change the memory map.

    Jawab :
    Instruksi yang diperbolehkan dalam mode kernel adalah A (Disable all interupts) dan D(Change the memory map).

    7. Sebutkan beberapa perbedaan sistem operasi pada personal komputer dengan sistem operasi pada mainframe!
    Jawab :
    Perbedaan sistem operasi pada PC dengan Sistem Operasi Mainframe :
    1. Dalam sistem operasi PC hanya mampu melayani satu user saja, sedangkan sistem operasi mainframe mampu untuk melayani banyak user.
    2. Pada sistem operasi PC biasanya memiliki user interfeace yang lebih menarik karena tujuan utamanya adalah member kemudahan kepada pengguna. Sedangkan sistem operasi mainframe biasanya hanya berupa barisan-barisan program saja tanpa adanya GUI yang memadai.
    3. Sistem operasi mainframe memiliki tingkat sekuritas yang jauh lebih baik daripada sistem operasi untuk komputer desktop.
    4. Sistem operasi mainframe memiliki kecepatan dan realibilitas kerja yang jauh lebih tinggi daripada sistem operasi personal komputer. Hal ini dikarenakan sistem operasi mainframe diharuskan untuk mampu menangani ratusan program aplikasi secara bersamaan. Serta sistem operasi mainframe harus mampu mengatur sejumlah pengaksesan dan penyimpanan ke basis data secara simultan. Sedangkan sistem operasi personal komputer biasanya hanya mampu menangani beberapa program saja untuk dijalankan secara bersamaan.
    8. Bagaimana secara umum sistem operasi memberitahukan kepada direktori kerja apakah path name untuk sebuah file adalah absolute atau relative?
    Jawab :
    Direktori adalah file, dimiliki sistem operasi dan dapat diakses dengan rutin-rutin di sistem operasi. Kebanyakan informasi berkaitan dengan penyimpan. Meski beberapa informasi direktori tersedia bagi pemakai atau aplikasi, informasi itu umumnya disediakan secara tidak langsung. Pemakai tidak dapat mengakses direktori secara langsung meski dalam mode read-only.
    Direktori juga menyediakan pemetaan nama file ke file. Informasi terpenting direktori adalah yang berkaitan dengan penyimpanan, termasuk lokasi penyimpanan dan ukuran file yang disimpan. Pada sistem bersama (shared system), informasi yang terpenting adalah informasi mengenai pengendalian akses file. Satu pemakai adalah pemilik file yang dapat memberi wewenang pengaksesan ke pemakai-pemakai lain.
    Aturan penamaan direktori mengikuti aturan penamaan file karena direktori merupakan file yang khusus.
    Jalur pengaksesan (path name).
    Bila sistem file diorganisasikan dengan pohon direktori,maka diperlukan cara menspesifikasikan nama file. Masalah penamaan file diselesaikan dengan penamaan absolut dan penamaan file relatif. Terdapat dua jalur, yaitu :
    a) Nama jalur absolut (absolute pathname).
    Nama jalur dari direktori root ke file, selalu dimulai dari
    direktori root da nakan bernilai unik.
    b) Nama jalur relatif (relative pathname).
    Jalur relatif terhadap direktori kerja/saat itu (working atau current director). Pemakai dapat menyatakan satu direktori sebagai current directory. Nama jalur yang tidak dimulai direktori root berarti relatif terhadap current directory.


    9. Mengapa shell bukan bagian dari sistem operasi?
    Jawab :
    Shell delete command interpreter yaitu Program yang menerima masukan berupa perintah ke sistem, dan menterjemahkan menjadi aktivitas sistem komputer. Tidak termasuk sistem operasi karena,shell di dalam kegiatannya tidak menjembantani antara user dengan hardware. Program ini di dalam menjalankan perintah mengakses informasi yang tercantum di sistem operasi.



    10. Berikan sebuah contoh bagaimana mekanisme dan kebijaksanaan bisa terpisah dengan baik dari pejadwalan. Buat sebuah mekanisme yang bisa mengijinkan sebuah parent process untuk mengontrol kebijaksanaan penjadwalan children.
    Jawab :
    Mekanisme merupakan penjelasan bagaimana melakukan sesuatu. Sedangkan kebijakan menentukan apa yang akan dilakukan. Dalam melakukan sebuah pemrosesan mekanisme tidak bisa diubah sedangkan kebijakan dapat diubah agar bila terjadi sesuatu hal dapat diantisipasi. Kebijakan penting untuk mengatur semua alokasi sumberdaya dan menjadwalkan masalah serta menentukan perlu atau tidaknya mengakolasikan sumber daya. Oleh karena itu antara mekanisme, kebijakan dan penjadwalan harus dipisahkan.
    Contoh sebuah mekanisme yang bisa mengijinkan sebuah parent process untuk mengontrol kebijaksanaan penjadwalan children adalah pada sistem operasi UNIX. Sistem operasi ini mempunyai system call fork yang berfungsi untuk membuat proses baru. Proses yang memanggil sistem call fork ini akan dibagi menjadi dua, yakni proses induk dan proses turunan yang identik. Fork ini berfungsi sebagai manajemen proses. Proses ini independen satu sama lain namun memiliki instruksi yang berbeda sama sekali. Jadi pengeksekusian program bisa dilaksanakan terus menerus tanpa harus menunggu sistem child selesai memproses. Dan bisa juga instruksi program induk mengatur pengeksekusian program anak atau turunan.


    11. Model Client-Server tekenal didalam distributed systems. Dapatkah juga digunakan dalam sistem komputer tunggal?
    Jawab :
    Dapat, karena sistem terdistribusi adalah sistem yang proses kerjanya membagi tugas proses untuk dijalankan oleh beberapa prosesor yang menjalankan fungsi masing-masing. Dan hal ini dapat dijalankan dalam sistem komputer tunggal. Contohnya dengan adanya prosesor dual core yang masing-masing prosesor melakukan fungsi tertentu serte keduanya terhubung oleh jaringan komunikasi data. Dengan menerapkan sistem terdistribusi ini maka akan meningkatkan kecepatan proses, penyediaan data dan peningkatan kehandalan kerja komputer.



    12. Mengapa proses tabel membutuhkan sistem timesharing? Apakah hal ini juga dibutuhkan dalam system personal computer yang pada suatu saat hanya terdapat satu proses yang sedang bekerja dan mengambil alih mesin sampai proses tersebut selesai?
    Jawab :
    Karena sistem timesharing dapat mengatur penjadwalan pemrosesan data maka kecepatan proses akan menjadi lebih cepat.
    Ya, teknologi sistem timesharing mutlak diperlukan untuk menjadwal pemrosesan data oleh prosesor. Walaupun hanya melakukan satu proses saja untuk dapat mempercepat kinerja pemrosan maka timesharing diperlukan. Bila prosesor harus langsung mengakses data dari memory permanent maka akan membutuhkan waktu yang lama untuk pemrosesan. Bahkan jika pengguna hanya menggunakan satu program saja pada satu waktu. Sistem operasi perlu mendukung program internalnya sendiri, seperti manajemen memori. Dengan kata lain, semua aktivitas tersebut adalah harus dilaksanakan dengan sistem timesharing.



    13. Apa perbedaan mendasar diantara blok special file dan character special file?
    Jawab :
    Perbedaan mendasar dari block special file dan character special file adalah proses pengiriman atau pentransferan datanya. Bila block special file transfer data dilakukan perblock perintah, sedangkan untuk character special file pentransferan datanya dilakukan perkarakter.
    Contoh block special file adalah proses pentransferan data pada media penyimpanan. Seperti Harddisk, CD-R, Floppy disk, Flash disk. Dan contoh penggunaan character special file adalah pada mouse dan keyboard.

    TUTORIAL USIA DENGAN JMP



    1. Buka aplikasi Command Prompt :
    2. Setelah itu ketik perintah berikut , lalu kemudian muncul tampilan berwarna biru seperti berikut :

    3. Setelah itu ketik perintah berikut ini :

    4. Jika sudah Klik File , lalu pilih Save untuk menyimpan . beri nama file contoh  JMP.asm. setelah itu Klik kembali File lalu pilih Exit untuk membuka kembali Command Prompt yang pertama kita buka sebelumnya
    5. Jika sudah ketik , TASM  JMP.asm lalu tekan Enter , kemudian ketik lagi TLINK/t JMP lalu tekan Enter lagi , terakhir ketik JMP maka akan keluar hasilnya akhir seperti gambar dibawah ini:

    untuk mendownload file tutorial diatas, silahkan unduh dibawah ini

    TUTORIAL RANGKAIAN JAM DIGITAL



    berikut adalah langkah langkahnya



    1. buka aplikasi proteus
    2. kemudian pilih komponen yang akan digunakan kemudian letakkan semua komponen seperti dibawah ini kemudian sambungkan dengan wire
    3. lalu buka pcb kemudian letakkan semua komponen seperti dibawah ini kemudian auto route
    4. untuk melihat hasilnya klik 3D

    TUTORIAL INPUT DARI KEYBOARD

    pada kali ini saya akan membahas tentang input dari keyboard, sebelumnya saya telah membuat tutorial masukan satu karakter dari keyboard dan masukan kalimat dari keyboard. 











    berikut adalah langkah - langkahnya :


    1. buka dosbox atau CMD
    2. lalu ketik edit dan enter, kemudian ketikan coding dibawah ini
    3. kemudian save dengan format .ASM
    4. lalu tasm dan tlink/t seperti gambar dibawah ini
    5. lalu test seperti gambar dibawah ini


    untuk mendownload file diatas bisa diunduh dibawah ini

    TUTORIAL MEMBUAT RESIDEN


    APA ITU PROGRAM RESIDEN ?  Pada waktu kita menyalakan komputer, ia mencari sistem operasi di drive A: ataupun C: ,kemudian memasukkannya kedalam memori bawah. Selanjutnya sistem akan terus berada disitu dan apabila kita menjalankan program aplikasi misalnya game maka program tersebut akan disimpan di atas sistem operasi, sehingga sistem operasi tetap ada walaupun kita  sedang menjalankan game tersebut. Inilah yang disebut residen, yaitu program  yang tetap tinggal di memori. 

    berikut adalah langkah - langkahnya :
    1. buka dosbox atau CMD 
    2. kemudian ketik edit dan enter, lalu ketikan coding dibawah ini
    3. lalu save dengan format .ASM
    4. kemudian TASM dan TLINK/t seperti gambar dibawah ini
    5. lalu test seperti gambar dibawah ini. untuk bisa berhenti tekan tombol pause break

    untuk mendownload file diatas bisa diunduh dibawah ini




    Semoga bermanfaat , terima kasih ^^

    MEMBUAT MENU SOROT


    Pada kali ini saya akan membahas tentang tutorial Membuat Menu Sorot pada pemrograman dengan menggunakan bahasa assembly, menu-menu yang disajikan oleh program yang besar hampir semuanya dalam bentuk menu sorot. Kini dengan sedikit pengetahuan mengenai memory layar akan kita buat suatu menu sorot yang sederhana. Menu ini bisa dikembangkan atau digunakan untuk program yang anda buat.


    berikut adalah langkah langkahnya
    1. langkah pertama buka dosbox bagi anda yang menggunakan dosbox, atau buka cmd bagi anda yang tidak menggunakan dosbox
    2. ketik
      cd /
      d:
      cd 1ca/asm
      lalu enter dan kemudian klik edit, maka akan tampil seperti dibawah ini
    3. lalu ketikan coding dibawah ini pada layar biru seperti gambar diatas

      DELAY MACRO
                      PUSH CX
                      XOR CX,CX
      LOOP1:
              LOOP LOOP1
              POP CX
              ENDM

      GESER MACRO PosY
              PUSH AX
              PUSH BX
              PUSH CX

              XOR CX,CX
              MOV AL,26
              SUB AL,PosY
              MOV CL,AL
      LOOP2:
              MOV AL,BYTE PTR ES:[BX]
              MOV BYTE PTR ES: [BX+160], AL

      HILANG:
              MOV BYTE PTR ES:[BX],' '
              DELAY
              ADD BX,160
              LOOP LOOP2

              POP CX
              POP BX
              POP AX
      ENDM

      Cls  MACRO  ; Macro untuk menghapus layar
      MOV AX,0600h

      XOR CX,CX
      MOV DX,184Fh
              MOV BH,11      ; Atribut Hijau diatas hitam
      INT 10h
      ENDM
      GotoXY  MACRO X,Y  ; Macro untuk memindahkan kursor
      MOV AH,02
      XOR BX,BX
      MOV DH,Y
      MOV DL,X
      INT 10h
      ENDM
      SimpanL MACRO  ; Macro untuk menyimpan seluruh
      LOCAL Ulang  ; isi layar monitor
      MOV AX,0B800h
      MOV ES,AX
      MOV CX,4000
      XOR BX,BX
      Ulang:
      MOV AL,ES:[BX]
      MOV Layar[BX],AL
      INC BX
      LOOP Ulang
      ENDM
      BalikL MACRO  ; Macro untuk mengembalikan semua
      LOCAL Ulang  ; isi layar yang telah disimpan
      MOV CX,4000
      XOR BX,BX
      Ulang:
      MOV AL,Layar[BX]
      MOV ES:[BX],AL
      INC BX
      LOOP Ulang
      ENDM
      Sorot  MACRO X,Y  ; Macro untuk membuat sorotan
      LOCAL Ulang  ; pada menu
      MOV BL,Y
      MOV AL,160
      MUL BL
      MOV BX,AX
      MOV AL,X
      MOV AH,2
      MUL AH
      ADD BX,AX
      INC BX  ; Alamat warna pada posisi X,Y
      MOV CX,15  ; Panjangnya sorotan
      Ulang:
      MOV BYTE PTR ES:[BX],4Fh ; Atribut sorotan
       ; putih diatas merah
      ADD BX,2
      LOOP Ulang
      ENDM
      Readkey MACRO  ; Macro untuk membaca masukan dari
      MOV AH,00  ; keyboard.
      INT 16h  ; hasilnya AH=Extended, AL=ASCII
      ENDM
      MenuL  MACRO String  ; Macro untuk mencetak menu
      MOV AH,09
      LEA DX,String
      INT 21h
      ENDM

      .MODEL SMALL
      .CODE
      ORG 100h
      TData:  JMP Proses



      Layar DB 4000 DUP (?)
      Menu      DB     9,9,'+=============================+',13,10
      DB      9,9,'|             >>> MENU SOROT <<<              |',13,10
      DB      9,9,'+=============================+',13,10
                      DB      9,9,'|                                                                     |',13,10
                      DB      9,9,'|  1. Cetak Karakter Warna                           |',13,10
                      DB      9,9,'|  2. Cetak Karakter tak warna                      |',13,10
                      DB      9,9,'|  3. Rontok                                                   |',13,10
                      DB      9,9,'|  4. SELESAI                                               |',13,10
                      DB      9,9,'|                                                                     |',13,10
      DB      9,9,'+=============================+$'

      PosX  DB  22  ; Posisi kolom mula-mula
      PosY  DB  12  ; Posisi baris mula-mula
      Panah_Atas  EQU  72  ; Kode tombol panah atas
      Panah_Bawah  EQU  80  ; Kode tombolpanah bawah
      TEnter  EQU  0Dh  ; Kode tombol Enter

      Proses :
      Cls  ; Hapus layar
      GotoXY  0 8  ; kursor = 0,8
      MenuL  Menu  ; Gambar menu
      SimpanL  ; Simpan isi layar
       Ulang :
      BalikL   ; Tampilkan isi layar yang disimpan
      Sorot  PosX,PosY  ; Sorot posisi X,Y

      Masukan:
      Readkey  ; Baca masukan dari keyboard
      CMP  AH,Panah_Bawah  ; Panah bawah yang ditekan ?
      JE  Bawah  ; Ya! lompat bawah

      CMP  AH,Panah_Atas  ; Panah atas yang ditekan ?
      JE  CekY  ; Ya, lompat CekY

      CMP  AL,TEnter  ; Tombol enter yang ditekan ?

      je      pilihan

      JNE  Masukan  ; Bukan, lompat ke ulangi

      CekY :
      CMP  PosY,12  ; Apakah sorotan paling atas ?
      JE  MaxY  ; Ya! lompat ke MaxY
      DEC  PosY  ; Sorotkan ke atas
      JMP  Ulang  ; Lompat ke ulang

      MaxY :
      MOV  PosY,15  ; PosY=Sorotan paling bawah
      JMP  Ulang  ; lompat ke ulang

      Bawah :
      CMP  PosY,15  ; apakah sorotan paling bawah ?
      JE  NolY  ; Ya! lompat ke NolY
      INC  PosY  ; Sorotkan ke bawah
      JMP  Ulang  ; Lompat ke ulang
       NolY :
      MOV PosY,12  ; Sorotan paling atas
      JMP  Ulang  ; Lompat ke ulang

      pilihan:cmp     posy,12
              je      huruf
      cmp posy,13
              je      warna
      cmp posy,14
              je      rontok
              cmp     posy,15
              jmp     SELESAI

      huruf:  cls
              gotoxy 25 8
              mov ah,02h
              mov dl,'A'
              mov cx,26
      huruf2:
              int 21h
              add dl,1
              loop huruf2

      jmp Masukan

      Warna:  cls
              gotoxy 25 10
      mov ah,09h
              mov bh,00h
      mov bl,1
              mov cx,26
      repwarna:
      int 10h
              add bl,1
              loop repwarna

      mov ah,02h
              mov dl,'A'
              mov cx,26
      repwarna2:
              int 21h
              loop repwarna2
      jmp Masukan

      rontok: JMP Prontok
           
      Prontok:cls
              gotoxy 25 12
      mov ah,02h
              mov dl,'A'
              mov cx,26
      huruf3:
              int 21h
              add dl,1
              loop huruf3

      mov ah,09h
              mov bh,00h
      mov bl,1
              mov cx,26
      repwarna1:
      int 10h
              add bl,1
              loop repwarna1

      mov ah,02h
              mov dl,'A'
              mov cx,26
      repwarna3:
              int 21h
              loop repwarna3

              MOV AX,0B800H
              MOV ES,AX

              MOV BX,3998
              MOV CX,25
      ULANGY:
              MOV PosY,CL
              PUSH CX
              MOV CX,80
      ULANGX:
              CMP BYTE PTR ES:[BX],33

              JB TdK

              GESER PosY
      TdK:
              SUB BX,2
              LOOP ULANGX
              POP CX

              LOOP ULANGY
      jmp Selesai



      Selesai:
      INT  20h
      END  TData
    4. kemudian simpan dengan format .ASM
    5. kemudian tasm dan tlink/t file yang disimpan tadi seperti gambar dibawah ini
    6. kemudian test. maka ia akan tampil seperti gambar dibawah ini

      enter cetak karakter warna untuk menampilkan karakter warna,

      enter cetak karakter tidak berwarna untuk menampilkan karakter tidak berwarna, dan enter rontok untuk menampilkan semua karakter rontok dan enter selesai untuk keluar.
    untuk mengunduh file tutorial diatas bisa diunduh dibawah ini

    - Copyright © 2011 - 2014 Ika Sunarsih - Yui-Lovers V2 - Powered by Blogger - Designed by - -