![]() |
у мну лам проблем.
имеется такой код на масм: Код:
.DATA но ошибка. помогите пожалуйсто |
2 x-treem тебе нужно весь буфер забить символом A?
Если а то вот код на FASM Код:
xor edi,edimov [Buff+edi], byte "A" или нет. Ты попробуй сделать так: Код:
xor edi,edi |
не, мне нуна добавлять туда символы.
сначала например А потом Hello потом puki а потом вывести в мессаджбоксе |
2x-treem:
Если мне не изменяет память, так работать с памятью нельзя. Надо через регистры. Типа: mov AL, byte "A" mov [Buff], AL |
Цитата:
Код:
mov [Buff], 0 |
iv. с памятью можно так работать, это же не из одного места памяти в другое, это в область памяти число пересылается... команда mov - это сделать в силах! mov Buff, "A" ;)
x-treem Код:
.386 P.S. x-treem Символы добавляются откуда? из DATA или просто в коде по штуке? или тебе сразу строку можно в буфер положить? |
у мну lstrcat не работает. то естьвот
Цитата:
что тут не так? |
Цитата:
---------Пример функции lstrcat---------------- .data hell db "HELL",0 .code invoke lstrcat,addr Buff,addr hell ------------------Работа с символами------------------- lea edi, Buff mov al, "и" mov byte ptr ds:[edi] , al xor al,al inc edi mov al,"з" mov byte ptr ds:[edi] ,al имхо так |
x-treem Если ты пишешь на masm'e то все данные в виде строк и т.д. нужно хранить в .data ,а буферы в .data? ... В fasm'e немного по другому...
Код:
;################################################### |
как обычно компилю тасмом com программу
--------------------код------------------------ cseg segment assume cs:cseg, ds:cseg,es:cseg,ss:cseg org 100h start: mov ax, 0b800h mov es,ax mov di, 0 mov ah,31 mov al, 1 mov es:[di], ax mov ax, 10h int 16h int 20h cseg ends end start --------------------код------------------------ tasm program.asm tlink program.obj/t/x все ок(тасм ошибок никаких не выдает) , запускаю из командной строчки и программа виснет(ОС не виснет) , смайлик не выводится.... хотя раньше выводился. В чем может быть проблема? |
| Время: 01:23 |