21
DRIVE, DIREKTORI DRIVE, DIREKTORI DAN FILE DAN FILE

Barak Pert.11

Embed Size (px)

Citation preview

Page 1: Barak Pert.11

DRIVE, DIREKTORI DAN DRIVE, DIREKTORI DAN FILEFILE

Page 2: Barak Pert.11

Pada bagian ini akan membahas 3 masalah pokok

dalam operasi file dari DOS yaitu :Drive yang terdiri dari pengambilan drive yang

sedang aktif dan penggantian drive yang aktifDirektori yang terdiri dari pengertian direktori,

pembuatan direktori dan penghapusan direktori

File yang terdiri dari penghapusan sebuah file dan mengubah nama suatu file

Page 3: Barak Pert.11

1. Drive A. Mengambil Drive Yang Sedang Aktif

Untuk mengambil drive yang sedang aktif dapat kita melakukan dengan menggunakan Interrupt 21h service 19 hexa.Untuk menjalankan Interrupt 21h service 19 hexa tersebut harus meletakkan service number dari Intrerrupt 21h di register AH dan melakukan perintah Interrupt 21h dengan Int 21h dan bila hal ini dilakukan, maka drive yang aktif akan berada di register AL dengan ketentuan bila AL berisikan 0, maka drive A sedang aktif, bila AL berisikan 1, maka drive B sedang aktif dan seterusnya

Page 4: Barak Pert.11

B. Mengganti Drive Yang Sedang Aktif

Untuk mengganti Drive yang sedang aktif dapat melakukan dengan menggunakan Interrupt 21h service 0E hexa.

Adapun syarat-syarat untuk melakukan Interrupt 21 hexa service 0E hexa adalah :Mengisi register AH dengan service number

dari Interrupt 21 hexa (0E hexa)Mengisi register DL dengan drive yang akan

diaktifkan dengan ketentuan 0 adalah A, 1 adalah dirve B dan seterusnya.

Page 5: Barak Pert.11

2. Direktori

A. Mengganti Direktori

Untuk melakukan penggantian direktori dapat dilakukan denga menggunakan Interrupt 21 hexa service 3B hexa dengan syarat-syarat dari Interrupt 21 hexa service 3B hexa adalah :Register AH harus berisikan service number dari

Interrupt 21 hexa (3B hexa)Register DS harus berisi segment dari permulaan

data yang nama direktori yang ingin diaktifkan dengan ketentuan nama direktori harus diakhiri dengan ASCII 0 (ASCII Zero).

Page 6: Barak Pert.11

Register DX harus berisi offset dari permulaan data yang berisikan nam direktori yang ingin diaktifkan dengan ketentuan nama direktori tersebut harus diakhiri dengan ASCII 0 (ASCII Zero).

Bila hal-hal di atas dilakukan, mak register AH akan berisikan kode kesalahan dari operasi bila mengalami kesalahan. Adapun contoh kode kesalahan yang paling sering muncul dalam penggantian direktori adalah AH= 3 atau Path Not Found.

Page 7: Barak Pert.11

B. Membuat Direktori

Untuk membuat direktori dapat digunakan Interrupt 21 hexa service 39 hexa yang mempunyai syarat pengoperasian :Register AH harus berisikan service number

dari Interrupt 21 hexa (39 hexa)Register DS harus berisi segment dari

permulaan data yang nama direktori yang ingin dibuat dengan nama direktori tersebut harus diakhiri dengan ASCII 0 (ASCII Zero).

Page 8: Barak Pert.11

Register DX harus berisi offset dari permulaan data yang berisikan nama direktori yang ingin dibuat dengan nama direktori tersebut harus diakhiri dengan ASCII 0 (ASCII Zero).

Bila melakukan Interrupt 21h service 39 hexa ini,

maka register AH akan muncul kode kesalahan

dari operasi bila mengalami kesalahan. Adapun

contoh kode kesalahan yang paling sering muncul

dalam penggantian direktori adalah: AH= 3 untuk Path Not Found.AH =5 untuk Access Denied

Page 9: Barak Pert.11

C. Mengahapus DirektoriUntuk melakukan penghapusan direktori melalui program Assambler dapat dilakukan dengan menggunakan Interupt 21 hexa service 3A hexa.Adapun syarat-syarat melakukan Interrupt 21 hexa serive 3A hexa adalah :Register AH harus berisikan service number

dari Interrupt 21 hexa (3A hexa)Register DS harus berisi segment dari

permulaan data yang berisi nama direktori yang diakhiri dengan ASCII 0 (ASCII Zero) yang akan dihapus.

Page 10: Barak Pert.11

Register DX harus berisi offset dari permulaan data yang berisikan nama direktori diakhiri dengan ASCII 0 (ASCII Zero) yang akan di hapus.

Bila terjadi kesalahan dalam proses, maka register AH akan berisikan kode kesalahan dari operasi bila mengalami kesalahan.

Page 11: Barak Pert.11

3. File

A. Mengubah Nama File

Untuk melakukan perubahan nama file, dapat

melakukan dengan Interrupt 21 hexa service 56

hexa yang mempunyai syarat operasi sebagai

berikut :Register AH harus berisikan service number

dari Interrupt 21 hexa (56 hexa)

Page 12: Barak Pert.11

Register DS:DX= berisikan segment dan offset permulaan data yang nama file yang ingin diubah dengan ketentuan nama direktori harus diakhiri dengan ASCII 0 (ASCII Zero).

ES:DX = berisikan segment dan offset dari permulaan data yang berisikan nam file perubahan nama dengan data tersebut harus diakhiri dengan ASCII 0 (ASCII Zero).

Page 13: Barak Pert.11

Bila ternyata hasil proses terjadi kesalahan, maka

register AH akan berisikan pesan kesalahan

tersebut dengan beberapa kesalahan yang sering

muncul adalah :AH= 3 untuk Path Not Found.AH = 5 untuk Access DeniedAH = 7 Alat operasi tidak sama

Page 14: Barak Pert.11

B. Menghapus FileUntuk melakukan penghapusan nama file, dapat

melakukan dengan Interrupt 21 hexa service 41 hexa yang mempunyai syarat operasi sebagai berikut :

Register AH harus berisikan service number dari Interrupt 21 hexa (41 hexa)

Register DS : DX = berisikan segment dan offset permulaan data yang nama file yang ingin diubah dengan ketentuan nama direktori harus diakhiri dengan ASCII 0 (ASCII Zero).

Page 15: Barak Pert.11

Bila terjadi kesalahan pada saat proses, maka

DOS akan mengeluarkan kode kesalahan melalui

register AH.

Cara pemakaian operasi file ini hampir sama dengan operasi direktori, cobalah buat sebuah file yang berguna untuk melakukan penghapusan dan perubahan nama terhadap suatu file.

Page 16: Barak Pert.11

SOAL-SOAL

Page 17: Barak Pert.11

1. Untuk mengetahui drive yang aktif setelah Interrupt 21 h, nilai pada register apa yang kita lihat?

a. AL c. BL

b. AH d. BH

2. Untuk melakukan penggantian direktori dengan Interrupt 21h, berapa nilai yang harus diberikan untuk register servicenya ?

a. 02 h c. 19 h

b. 3B h d. 3E h

Page 18: Barak Pert.11

2. Untuk melakukan penggantian direktori dengan Interrupt 21h, berapa nilai yang harus diberikan untuk register servicenya ?

a. 02 h c. 19 h

b. 3B h d. 3E h

3. Untuk membuat direktori dengan Interrupt 21h, apa yang harus diisikan ke register DX?

a. Segment dari awal data c. Offset dari awal data

b. Segment dari akhir data d. Offset dari akhir data

Page 19: Barak Pert.11

3. Untuk membuat direktori dengan Interrupt 21h, apa yang harus diisikan ke register DX?

a. Segment dari awal data c. Offset dari awal data

b. Segment dari akhir data d. Offset dari akhir data

4. Untuk melakukan perubahan nama file dengan Interrupt 21h, bila ternyata hasil proses mengalami kesalahan, pesan kesalahan akan terdapat pada register apa?

a. DS c. ES

b. DX d. AH

Page 20: Barak Pert.11

4. Untuk melakukan perubahan nama file dengan Interrupt 21h, bila ternyata hasil proses mengalami kesalahan, pesan kesalahan akan terdapat pada register apa?a. DS c. ESb. DX d. AH

5. Untuk mengganti drive yang sedang aktif dapat menggunakan interrupt :a. Int 21h service 0E h b. Int 21h service 3Bhc. Int 21 h service 19hd. Int 21 h service 3Eh

Page 21: Barak Pert.11

5. Untuk mengganti drive yang sedang aktif dapat menggunakan interrupt :

a. Int 21h service 0E h

b. Int 21h service 3Bh

c. Int 21 h service 19h

d. Int 21 h service 3Eh

1. Untuk mengetahui drive yang aktif setelah Interrupt 21 h, nilai pada register apa yang kita lihat?

a. AL c. BL

b. AH d. BH