Definisi Seorang Enterpreneur

  • Berani menanggung resiko
  • Koordinator dengan manajerial
  • Inovatif yang kreatif

Materi-materi Enterpreneur untuk bahan presentasi:

  1. Enterpreneur Vs Pegawai
  2. Berpikir perubahan
  3. Berpikir kreatif
  4. Berorientasi pada tindakan
  5. Pengambilan resiko
  6. Leadership
  7. Etika Bisnis
  8. Mencari gagasan usaha
  9. Pemasaran usaha
  10. Memulai Usaha

Semboyan-semboyan yang bagus untuk direnungkan:

” Uang adalah akar sumber kejahatan, uang sedikit tidak apa-apa yang penting berkah ”

” Rumah besar bersihkannya susah, mending kecil namun menyenangkan ”

” Jadi haji besar tanggung jawabnya, nanti saja dech naik haji kalau sudah siap ilmu ”

” Banyak uang banyak godaan, lebih baik sedikit asal cukup semua kebutuhan ”

” Banyak uang dekat dengan maksiat, lebih baik sederhana dan diridhoi Allah “

Advertisements

Perulangan Dalam Assembly

Apakah anda masih ingat dengan program pertama kita, yaitu program untuk mencetak huruf A ?.Bagaimana jika kita ingin mencetak lebih dari satu karakter ?. Apakah kita harus mengetikkan perintah mov ah,? dan int 21h sebanyak karakter yang ingin dicetak ?. Tentunya hal tersebut akan sangat mubadzir sekali. Akan lebih efektif lagi jika anda menggunakan LOOP atau perulangan. Berikut ini contoh programnya:

; program mencetak huruf A

; sebanyak 26 kali

; dengan menggunakan loop

.model small

.code

org 100h

mulai:

mov ah,02 ; servis cetak karakter

mov dl,65 ; dl=A

mov cx,26 ; banyaknya perulangan

ulang:

int 21h ; cetak karakter

loop ulang ; ulangi hingga 26 kali

int 20h ; selesai

end mulai

Dari contoh program diatas, anda akan melihat sebuah register baru yaitu CX. Register ini sifatnya unik, yaitu bisa digunakan sebagai pencacah atau counter dalam sebuah perulangan. Secara otomatis nilai CX akan berkurang 1 atau CX=CX-1, jika terdapat perintah LOOP. Sedangkan ketika ada perintah LOOP program akan memeriksa nilai CX, jika CX=0, maka perulangan akan dihentikan. Selain itu jika nilai CX >0 maka nilai CX akan dikurangi 1.

INCREASE dan DECREASE

Didalam suatu perulangan biasanya berhubungan dengan penaikan nilai. Sebagai contoh jika kita ingin mencetak huruf A sampai dengan Z, maka kita perlu membuat suatu perulangan dan menaikan nilai A hingga Z. untuk menaikan nilai, dalam bahasa rakitan digunakan perintah INC. Kebalikannya, fungsi decrease adalah untuk menurunkan suatu nilai. Didalam bahasa rakitan digunakan perintah DEC.

Berikut ini contoh programnya:

; program mencetak

; huruf A s/d Z

; dengan loop dan inc

.model small

.code

org 100h

mulai:

mov ah,02 ; servis cetak karakter

mov dl,65 ; dl=A

mov cx,26 ; banyaknya perulangan

ulang:

int 21h ; cetak karakter

inc dl ; naikkan nilai dl

loop ulang ; ulangi hingga 26 kali

int 20h ; selesai

end mulai

Belajar Bahasa Assembly

Untuk membuat program menggunakan bahasa rakitan, anda bisa menggunakan editor apapun.  Ketikkan script berikut dengan Notepad++ dan simpan dengan nama a.asm :

; program mencetak huruf A kelayar

; by code_abu_syafa@yahoo.com

.model small

.code

org 100h

mulai: mov ah,02

mov dl,65

int 21h

int 20h

end mulai

Kemudian simpan program anda, dan keluar dari program editor.

Keterangan program

;(tanda titik koma)

Merupakan baris keterangan program. Artinya setelah tanda ; program akan mengabaikan perintah apapun yang ada.

.model small

Digunakan untuk menentukan mode dari program anda, seperti tiny, small dan lain sebagainya.

.code
org 100h

Menentukan alamat offset dari program yang akan digunakan. Untuk program com selalu diawali dari offset 100h.

mulai:

Adalah nama label. Pada pemrograman assembly anda harus mengawali program anda dengan sebuah label. Label ini juga digunakan untuk lompatan program dengan perintah jmp (jump).

mov ah,02

Mengisi register ah dengan servis 2, identik dengan ah:=2 dalam bahasa pascal. Artinya kita menyuruh program nantinya untuk mencetak sebuah karakter yang ada pada register dl. Dengan kata lain perintah mov ah,02 adalah servis untuk mencetak sebuah karakter. Angka 2 disini adalah 2 heksadesimal, sehingga biasa ditulis 02h.

mov dl,65

Mengisi register dl dengan karakter ascii 65 atau ‘A’. Jadi perintah diatas bisa diubah atau sama artinya dengan perintah mov dl,’A’.

int 21h

Menjalankan interupsi nomor 21. Interupsi ini akan mengerjakan sesuai dengan nilai servis yang diisikan. Karena ada perintah mov ah,2 maka progam akan mencetak karakter yang ada pada register dl.

int 20h

Menjalankan interupsi 20. Interupsi ini berfungsi untuk mengembalikan kontrol ke DOS, dengan kata lain interupsi ini digunakan untuk menghentikan jalannya program.

end mulai

Akhir dari progam. Untuk mengakhiri program anda harus mengetikkan perintah end diikuti oleh nama label yang pertama kali digunakan.

Untuk menjalankannya ketikkan perintah:

> tasm a.asm

>tlink/t a

>a

Interupt

Interupsi adalah suatu permintaan khusus kepada mikroposesor untuk melakukan sesuatu. Bila terjadi interupsi, maka komputer akan menghentikan dahulu apa yang sedang dikerjakannya dan melakukan apa yang diminta oleh yang menginterupsi.

Setiap interrupt akan mengeksekusi interrupt handlernya masing-masing berdasarkan nomornya. Sedangkan alamat dari masing- masing interupt handler tercatat di memori dalam bentuk array yang besar elemennya masing-masing 4
byte. Keempat byte ini dibagi lagi yaitu 2 byte pertama berisi kode offset sedangkan 2 byte berikutnya berisi kode segmen dari alamat interupt handler yang bersangkutan. Jadi besarnya array itu adalah 256 elemen dengan ukuran elemen masing-masing 4 byte. Total keseluruhan memori yang dipakai adalah sebesar 1024 byte (256 x 4 = 1024) atau 1 KB dan disimpan dalam lokasi memori absolut 0000h sampai 3FFh. Array sebesar 1 KB ini disebut Interupt Vector Table (Table Vektor Interupsi). Nilai-nilai yang terkandung pada Interupt Vector Table ini tidak akan sama di satu komputer dengan yang lainnya. Interupt yang berjumlah 256 buah ini dibagi lagi ke dalam 2 macam yaitu:

  • Interupt 00h – 1Fh (0 – 31) adalah interrupt BIOS dan standar di semua komputer baik yang menggunakan sistem operasi DOS atau bukan. Lokasi InteruptVector Table-nya ada di alamat absolut 0000h-007Fh.
  • Interupt 20h – FFh (32 – 255) adalah interrupt DOS. Interrupt ini hanya ada pada komputer yang menggunakan sistem operasi DOS dan Interupt Handler-nya di-load ke memori oleh DOS pada saat DOS digunakan. Lokasi Interupt Vector Table-nya ada di alamat absolut 07Fh-3FFh.

Daftar Nomor Interupt:

No. Interupt         Nama Interupt            No. Interupt         Nama Interupt           

  1. *00h            Divide By Zero                       10h             Video Service
  2. *01h             Single Step                              11h             Equipment Check
  3. *02h            Non MaskableInt(NMI)      12h             Memory Size
  4. *03h             Break point                             13h             Disk Service
  5. 04h               Arithmatic Overflow            14h            Communication (RS-232)
  6. 05h               Print Screen                            15h             Cassette Service
  7. 06h               Reserved                                   16h             Keyboard Service
  8. 07h               Reserved                                   17h             Printer Service
  9. 08h              Clock Tick(Timer)                  18h             ROM Basic
  10. 09h              Keyboard                                   19h              Bootstrap Loader
  11. 0Ah             I/O Channel Action                1Ah             BIOS time & date
  12. 0Bh             COM 1 (serial 1)                       1Bh             Control Break
  13. 0Ch             COM 2 (serial 2)                       1Ch             Timer Tick
  14. 0Dh            Fixed Disk                                  1Dh             Video Initialization
  15. 0Eh            Diskette                                        1Eh             Disk Parameters
  16. 0Fh             LPT 1 (Parallel 1)                       1Fh            Graphics Char

+——————————————-+
| Nomor                       Nama Interrupt      |

| 20h                          Terminate Program |
| 21h                    DOS Function Services |
| 22h                                 Terminate Code |
| 23h                                Ctrl-Break Code |
| 24h                     Critical Error Handler |
| 25h                          Absolute Disk Read |
| 26h                         Absolute Disk Write |
| 27h         Terminate But Stay Resident |
+——————————————-+