امتیاز موضوع:
  • 2 رأی - میانگین امتیازات: 5
  • 1
  • 2
  • 3
  • 4
  • 5
کار با فایل ها در اسمبلی به وسیله وقفه ها
نویسنده پیام
The.Ghost غایب
مدیر بازنشسته
*****

ارسال‌ها: 461
موضوع‌ها: 201
تاریخ عضویت: مهر ۱۳۸۸

تشکرها : 674
( 354 تشکر در 158 ارسال )
ارسال: #1
Question  کار با فایل ها در اسمبلی به وسیله وقفه ها
کد:
name "fileio"

; general rules for file system emulation:

; 1. the emulator emulates all drive paths in c:\emu8086\vdrive\
; for example: the real path for "c:\test1" is "c:\emu8086\vdrive\c\test1"

; 2. paths without drive letter are emulated to c:\emu8086\MyBuild\
; for example: the real path for "myfile.txt" is "c:\emu8086\MyBuild\myfile.txt"

; 3. if compiled file is running outside of the emulator rules 1 and 2 do not apply.

; ==================================================================================
; run this example slowly in step-by-step mode and observe what it does.
; ==================================================================================

org 100h

jmp start

dir1 db "c:\test1", 0
dir2 db "test2", 0
dir3 db "newname", 0
file1 db "c:\test1\file1.txt", 0
file2 db "c:\test1\newfile.txt", 0
file3 db "t1.txt", 0
handle dw ?

text db "lazy dog jumps over red fox."
text_size = $ - offset text
text2 db "hi!"
text2_size = $ - offset text2

start:
mov ax, cs
mov dx, ax
mov es, ax


; create c:\emu8086\vdrive\C\test1
mov dx, offset dir1
mov ah, 39h
int 21h

; create c:\emu8086\MyBuild\test2
mov dx, offset dir2
mov ah, 39h
int 21h

; rename directory: c:\emu8086\MyBuild\test2 to c:\emu8086\MyBuild\newname
mov ah, 56h
mov dx, offset dir2 ; existing.
mov di, offset dir3 ; new.
int 21h



; create and open file: c:\emu8086\vdrive\C\test1\file1.txt
mov ah, 3ch
mov cx, 0
mov dx, offset file1
int 21h
jc err
mov handle, ax
; write to file:
mov ah, 40h
mov bx, handle
mov dx, offset text
mov cx, text_size
int 21h
; close c:\emu8086\vdrive\C\test1\file1.txt
mov ah, 3eh
mov bx, handle
int 21h
err:
nop


; rename fileL c:\emu8086\vdrive\C\test1\file1.txt to c:\test1\newfile.txt
mov ah, 56h
mov dx, offset file1 ; existing.
mov di, offset file2 ; new.
int 21h


; delete file c:\emu8086\vdrive\C\test1\newfile.txt
mov ah, 41h
mov dx, offset file2
int 21h


; delete directory: c:\emu8086\vdrive\C\test1
mov ah, 3ah
mov dx, offset dir1
int 21h


; create and open file: c:\emu8086\MyBuild\t1.txt
mov ah, 3ch
mov cx, 0
mov dx, offset file3
int 21h
jc err2
mov handle, ax
; seek:
mov ah, 42h
mov bx, handle
mov al, 0
mov cx, 0
mov dx, 10
int 21h
; write to file:
mov ah, 40h
mov bx, handle
mov dx, offset text
mov cx, text_size
int 21h
; seek:
mov ah, 42h
mov bx, handle
mov al, 0
mov cx, 0
mov dx, 2
int 21h
; write to file:
mov ah, 40h
mov bx, handle
mov dx, offset text2
mov cx, text2_size
int 21h
; close c:\emu8086\MyBuild\t1.txt
mov ah, 3eh
mov bx, handle
int 21h
err2:
nop


; delete file c:\emu8086\MyBuild\t1.txt
mov ah, 41h
mov dx, offset file3
int 21h


; delete directory: c:\emu8086\MyBuild\newname
mov ah, 3ah
mov dx, offset dir3
int 21h

ret

یکمی دقت کنید می تونید ویروس های جالبی بنویسید.ConfusedConfusedClap

Assembly Language 039

(آخرین ویرایش در این ارسال: ۱۶-فروردین-۱۳۹۱, ۰۶:۱۳:۵۵، توسط The.Ghost.)
۱۶-فروردین-۱۳۹۱, ۰۶:۰۳:۱۲
ارسال‌ها
پاسخ
تشکر شده توسط : megatron, helma, lord_viper, nImaarek
megatron آفلاین
عضو افتخاری
****

ارسال‌ها: 228
موضوع‌ها: 48
تاریخ عضویت: فروردین ۱۳۸۷

تشکرها : 94
( 171 تشکر در 91 ارسال )
ارسال: #2
RE: کار با فایل ها در اسمبلی به وسیله وقفه ها
داش سینا جدا که ایول داری :*
۱۵-آذر-۱۳۹۱, ۰۱:۲۵:۵۳
ارسال‌ها
پاسخ
تشکر شده توسط : The.Ghost
megatron آفلاین
عضو افتخاری
****

ارسال‌ها: 228
موضوع‌ها: 48
تاریخ عضویت: فروردین ۱۳۸۷

تشکرها : 94
( 171 تشکر در 91 ارسال )
ارسال: #3
RE: کار با فایل ها در اسمبلی به وسیله وقفه ها
سلام.
سینا جان این بعضی از قسمتاش ارور میده.
خودت یه دور تست کن ببین مشکل کجاست...
۱۶-آذر-۱۳۹۱, ۰۰:۳۶:۳۰
ارسال‌ها
پاسخ
The.Ghost غایب
مدیر بازنشسته
*****

ارسال‌ها: 461
موضوع‌ها: 201
تاریخ عضویت: مهر ۱۳۸۸

تشکرها : 674
( 354 تشکر در 158 ارسال )
ارسال: #4
RE: کار با فایل ها در اسمبلی به وسیله وقفه ها
سلام نه همه درسته مطمئن هستم.
اگه بعضی از قسمتاش ارور میده برای این است داری emu8086 اجراء می کنی.
ابتدا وقتی برنامه مورد نظرتو در emu8086 نوشتی باید کامپایل کنی یعنی باید فایل اجرایی شو که همان فایل EXE هست بسازی.
بعد از ساخت فایل اجرایی دیگه مشکلی نخواهی داشت و دیگه ارور هم نمیدهد به شرط آن که EXE اجراء کنی.
موفق باشی.

Assembly Language 039

۱۶-آذر-۱۳۹۱, ۲۰:۲۴:۳۱
ارسال‌ها
پاسخ
تشکر شده توسط : megatron
007rap آفلاین
تازه وارد

ارسال‌ها: 5
موضوع‌ها: 1
تاریخ عضویت: آذر ۱۳۹۴

تشکرها : 0
( 0 تشکر در 0 ارسال )
ارسال: #5
RE: کار با فایل ها در اسمبلی به وسیله وقفه ها
salam mal man ke 7 , 8 ta error vahshat nak dad  :lol:
۰۳-آذر-۱۳۹۴, ۰۷:۰۳:۵۷
ارسال‌ها
پاسخ


موضوعات مرتبط با این موضوع...
موضوع نویسنده پاسخ بازدید آخرین ارسال
  [آموزشی] ویژوال اسمبلی babyy 0 2,025 ۱۷-مرداد-۱۳۹۶, ۲۳:۲۸:۱۹
آخرین ارسال: babyy
  [سوال] معرفی کتاب برای شروع اسمبلی و چند سوال nImaarek 3 3,157 ۰۲-تير-۱۳۹۶, ۱۷:۵۲:۰۴
آخرین ارسال: NO DONGLE
Question [سوال] کمک برای نوشتن برنامه چاپ ستاره در اسمبلی shahinbufaluo 5 5,011 ۱۹-اسفند-۱۳۹۴, ۱۶:۰۵:۵۴
آخرین ارسال: The.Ghost
  [سوال] یادگیری زبان اسمبلی mirage0411 2 2,664 ۲۶-بهمن-۱۳۹۴, ۰۲:۱۰:۲۲
آخرین ارسال: mirage0411
Rolleyes صفر اسمبلی کجاس ؟میخوام از صرف شروع کنم 007rap 2 2,647 ۰۳-آذر-۱۳۹۴, ۱۰:۲۲:۴۱
آخرین ارسال: lord_viper
Question رسم اشکال هندس مانند مستطیل و مربع در اسمبلی The.Ghost 7 12,097 ۰۳-آذر-۱۳۹۴, ۰۶:۳۱:۰۵
آخرین ارسال: 007rap
  [سوال] چند برنامگی در اسمبلی Ghoghnus 0 1,924 ۱۳-آبان-۱۳۹۳, ۱۹:۲۵:۱۶
آخرین ارسال: Ghoghnus
  [سوال] کمک در خصوص تبدیل فیل هگز به اسمبلی یا c h_fotohi 1 3,144 ۲۵-اسفند-۱۳۹۲, ۰۳:۱۷:۵۷
آخرین ارسال: The.Ghost
  کمک فوری->برنامه ای به زبان اسمبلی Smart_SY 1 2,905 ۲۵-آذر-۱۳۹۲, ۰۱:۱۱:۴۰
آخرین ارسال: babyy
  برنامه دوز به زبان اسمبلی MAHDIYE 7 10,188 ۱۳-تير-۱۳۹۲, ۰۱:۰۴:۱۶
آخرین ارسال: babyy

پرش به انجمن:


کاربرانِ درحال بازدید از این موضوع: 2 مهمان

صفحه‌ی تماس | IranVig | بازگشت به بالا | | بایگانی | پیوند سایتی RSS