Код (Text): text segment assume cs:text, ds:text begin: mov AX,data mov DS,AX mov AH,41h mov DX, offset fname int 21h jc error ; Переход, если ошибка mov AH,09h ; Вывод сообщения mov DX, offset msgok; об удалении int 21h fin: mov AX,4c00h ; Завершение программы int 21h ; Вызов DOS ; блок анализа ошибок error: cmp AX,02h ; Файл не найден? je notfound ; Да, вывести сообщение cmp AX,03h ; Путь не найден? je wrongdir ; Да, вывести сообщени cmp AX,05h ; Доступ запрещен? je noaccess ; Да, вывести сообщени jmp fin ; Неизвестная ошибка ; Блок вывода сообщений notfound:mov Dx, offset msg1 jmp write wrongdir:mov DX, offset msg2 jmp write noaccess:mov DX, offset msg3 write: mov AH,09h int 21h jmp fin text ends data segment fname db 'c:\1.txt',0 msgok db 'Файлн удалён1$' msg1 db 'Файл не найден2$' msg2 db 'Каталог неверен3$' msg3 db 'Доступ запрещён4$' data ends stk segment stack db 256 dup(0) stk ends end begin Вот исходник. Транслирую,линкую всё работает но вместо русских букв какая-то бука!!! 1)Кто скажет что по этому поводу или у меня чтото с виндой 2)Почему модуль весит 1614 байт. При просмотреть чере F3 -много нулей. КАк включить опртимизацию. Почему много нулей? Компилю тасмом Код (Text): rem Просто меняйте номер пример с 1-1 на *-* rem Copyright ajak. Александр Якушев @echo off tasm /z /zi /n 1-1 1-1 1-1 if errorlevel 1 goto err tlink /v /x 1-1,1-1 goto end :err echo Ошибка трансляции! goto fin :end echo Конец сеанса :fin echo .
А вы в какой кодировке файл сохраняете? Надо в DOS-кодировке. И еще, желательно явно указать видеорежим при запуске программы. Код (Text): mov ax,0x0003 int 10h
видимо, ты исходник правишь в кодировке win (СР-1251, ANSI), а в консольном окне - кодировка дос (CP-866, OEM). выход: писать в дос-редакторе (FAR, DN) или редакторе, который позволяет загружать "как" текст ДОС (и сохранять соответственно)
Понял это ЗРЗ В общем у меня что то с виндой потому что даже сообщения компилятора как то неправильно выводятся http://slil.ru/27907392 Посмотрите, скажиет что можно сделать ,решить эту проблему не переустанавливая винду
Microedition в 3 посте тебе ясно сказал. смени редактор или сохраняй в другой кодировке Файл>Сохранить как Кодировака если блокнот не тянет, то попробуй там Bred, Uniqway Poetic, Notepad2, ..., какую нибудь студию для asm
ajak сколько вариантов сказать одно и тоже ^^ Вывод: сохраняйте правильно! или смените кодировку консоли вызовом chcp 1251! сохраняйте правильно! или смените кодировку консоли вызовом chcp 1251! боже мой...
вот это пурга! попробуй такой исходник: Код (Text): text segment assume cs:text, ds:text begin: mov AX,data mov DS,AX mov AH,41h mov DX, offset fname int 21h jc error ; ЏҐаҐе®¤, Ґб«Ё ®иЁЎЄ mov AH,09h ; ‚лў®¤ б®®ЎйҐЁп mov DX, offset msgok; ®Ў г¤ «ҐЁЁ int 21h fin: mov AX,4c00h ; ‡ ўҐа襨Ґ Їа®Ја ¬¬л int 21h ; ‚л§®ў DOS ; Ў«®Є «Ё§ ®иЁЎ®Є error: cmp AX,02h ; ” ©« Ґ ©¤Ґ? je notfound ; „ , ўлўҐбвЁ б®®ЎйҐЁҐ cmp AX,03h ; Џгвм Ґ ©¤Ґ? je wrongdir ; „ , ўлўҐбвЁ б®®ЎйҐЁ cmp AX,05h ; „®бвгЇ § ЇаҐйҐ? je noaccess ; „ , ўлўҐбвЁ б®®ЎйҐЁ jmp fin ; ЌҐЁ§ўҐбв п ®иЁЎЄ ; Ѓ«®Є ўлў®¤ б®®ЎйҐЁ© notfound:mov Dx, offset msg1 jmp write wrongdir:mov DX, offset msg2 jmp write noaccess:mov DX, offset msg3 write: mov AH,09h int 21h jmp fin text ends data segment fname db 'c:\1.txt',0 msgok db '” ©« г¤ «с1$' msg1 db '” ©« Ґ ©¤Ґ2$' msg2 db 'Љ в «®Ј ҐўҐаҐ3$' msg3 db '„®бвгЇ § ЇаҐйс4$' data ends stk segment stack db 256 dup(0) stk ends end begin