| 
| 
 | Вопрос # 6 217/ вопрос закрыт / | 
 |  Приветствую, уважаемые эксперты!Возникла проблема при написании 64-битной программы в FASM. Дело в том что семестр мы программировали на TASM'е, а тут преподаватель попросил написать программу под 64-разрядную ОС. Я написал код на тасме и перевел его под фасм, но что-то пошло не так... В общем компилятор меня не ругает, но и программа не работает. Может кто подскажет в чем проблема? Прерывания там эти не работает, загружать что-то дополнительно надо, или вообще все с нуля писать? Помогите, кто чем может)))
 Приложение:Переключить в обычный режим format PE64 consoleentry start section '.data' data readable writeable buf db 50 len	db	? string rb	50 i db 0 kol dw 0  ms1 db  0Dh,0Ah,'Enter directory or press "Enter" to continue: ','$' ms2 db  0Dh,0Ah,'File not found','$' ms3 db  0Dh,0Ah,'Number of files found - ','$' ms4 db  0Dh,0Ah,'Enter mask of file: ','$' section '.code' code readable executablestart:  xor ax,ax mov ah,09h lea dx,[ms1] int 21hxor dx,dx  call GetName   mov bx,0 lea dx,[string] int 21h  int 21h  mov cx,50   mov byte [string+i],0 inc [i] loop clear xor bx,bx mov ah,09h lea dx,[ms4] int 21hxor dx,dx  call GetName mov cx,0lea dx,[string] ; FileNameint 21hjc Not_Foundinc [kol]   mov ah,4fh lea dx,[string] ;FileName int 21h jc Exit inc [kol] jmp FindNext   Not_Found: mov ah,09h lea dx,[ms2] int 21hExit:  mov ah,09h lea dx,[ms3] int 21h call OutPut  GetName:  	mov	ah, 0ah	int	21h     	ret OutPut:        xor ax,ax 	push	-1	mov	cx,10l:	mov	dx,0	div	cx	push	dx	cmp	ax,0	jne	l	mov	ah,2hl2:	pop	dx	cmp	dx,-1	je	ex	add	dl,'0'	int	21h	jmp	l2ex: 	ret mov ax,4c00hint 21h
|  |   Вопрос задал: NeStor (статус: Посетитель)Вопрос отправлен: 29 июня 2012, 19:29
 Состояние вопроса: закрыт, ответов: 0.
 |  
 Мини-форум вопросаВсего сообщений: 0. 30 июня 2012, 10:59: Вопрос закрыт (решение принял автор вопроса — NeStor): спасибо за помощь)) Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте. |