#1 31.08.11 22:47
Assembler(TASM, MASM)-не могу ассемблировать программу
Вообщем написал вот такой простой код:
Код::
.MODEL SMALL .STACK 100h .DATA Message DB 'Hello!',13,10,'$' .CODE mov ax,@data mov dx,ax mov ah,9 mov dx, OFFSET Message int 21h mov ah,4ch int 21h END
Затем зашел в командную строку и сделал "окружение(это термин такой, когда в папку с ассемблером переходишь)"... ПРограмма называется HELLO
Потом написал следующее:
TASM.exe hello
А в ответ получил - Can't locate file: Hello.asm
Что может быть не так?
Offline
#3 01.09.11 10:30
Re: Assembler(TASM, MASM)-не могу ассемблировать программу
Файл я положил в директорию с TASM(ТОчнее он уже там лежал, когда я создавал топик)... Все равно та же история... Думаю, что дело в текстовом редакторе(я писал в обычном виндовском БЛОКНОТЕ). Причем файл .ASM в папке BIN TASMа создается, но все равно выдает эту ошибку... Кроме того потом его надо будет линковщиком еще собирать, даже не знаю, что там еще ему не понравится:)
Offline
#4 01.09.11 15:17
Re: Assembler(TASM, MASM)-не могу ассемблировать программу
Wanseg, напиши полный путь к файлу, всё-таки. По крайней мере весь текст ошибки об этом очень сильно намекает. Причем здесь может быть текстовый редактор? В пути к файлу русских имен папок нет?
И да
Wanseg написал(а):
Код: asm:
mov ax,@data mov dx,ax
Может ты всё-таки хочешь настроить сегментный регистр на сегмент данных
Код: asm:
mov ax,@data mov ds,ax
Исправлено Revenger (01.09.11 15:26)
Offline
#5 02.09.11 08:21
Re: Assembler(TASM, MASM)-не могу ассемблировать программу
Revenger написал(а):
Wanseg написал(а):
Код: asm:
mov ax,@data mov dx,ax
Может ты всё-таки хочешь настроить сегментный регистр на сегмент данных
Код: asm:
mov ax,@data mov ds,ax
Кстати да, не заметил - давно на ассемлере не писал ничего :)
Когда-то написал программку, которая еоторая 100% работает. Может поможет:
Код::
text segment 'code'
assume cs:text, ds:data
target proc
mov AX,data
mov DS,AX
mov ah,40h
mov bx,1
mov cx, length1
mov dx,offset str1
int 21h
mov ah,40h
mov bx,1
mov cx, length2
mov dx,offset str2
int 21h
mov ah,3Fh
mov bx,0
mov cx,80
mov dx,offset buf
int 21h
mov astlen,ax
mov cx, 2
cmp astlen, cx
jz EMPTY
mov dx,offset buf
PRINT: mov cx,5000
TOUT: push cx
mov cx,0
TIN: loop TIN
pop cx
loop TOUT
mov ah,40h
mov bx,1
mov cx,1
int 21h
add dx,1
sub astlen,1
jnz PRINT
mov ah,40h
mov bx,1
mov cx,length5
mov dx,offset str5
int 21h
mov ah,40h
mov bx,1
mov cx,length4
mov dx,offset str4
int 21h
jmp EXIT
EMPTY: mov ah,40h
mov bx,1
mov cx, length3
mov dx,offset str3
int 21h
EXIT: mov ah,01h
int 21h
mov ax, 4C00h
int 21h
target endp
text ends
data segment
str1 db "My Target in Assembler applicaton :).",13,10
length1 equ $-str1
str2 db "Print target and press <Enter>, I'll try to do it: "
length2 equ $-str2
str3 db "You don't want me to do something. It's your choise. Bye!",13,10
length3 equ $-str3
str4 db 'Have you got satisfaction? :)'
length4 equ $-str4
str5 db ' ',13,10
length5 equ $-str5
buf db 80 dup (0)
astlen dw 0
data ends
stck segment stack 'stack'
db 128 dup(?)
stck ends
end targetИсправлено [PAUL] (02.09.11 08:22)
Offline

