![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() |
![]()
Сообщение
#1
|
|
Новичок ![]() Группа: Members Сообщений: 23 Регистрация: 13.9.2006 Из: Чебоксары Пользователь №: 1,734 ![]() |
люди помогите написать прогу для "сканирования и замена в тексте" на Assemblere, уж больно тяжелый язык....
![]() надеюсь кто-нить сможет помочь мне решить эту задачку : ) |
|
|
![]() |
![]()
Сообщение
#2
|
|
![]() Мега постер ![]() Группа: Local moder Сообщений: 1,712 Регистрация: 21.8.2006 Пользователь №: 1,269 ![]() |
Алгоритм следующий:
Код .686 .model flat, stdcall option casemap : none include \masm32\include\windows.inc include \masm32\macros\macros.asm include \masm32\include\masm32.inc include \masm32\include\gdi32.inc include \masm32\include\user32.inc include \masm32\include\kernel32.inc includelib \masm32\lib\masm32.lib includelib \masm32\lib\gdi32.lib includelib \masm32\lib\user32.lib includelib \masm32\lib\kernel32.lib .data in_str db "Hello, world!",0 rp_char db "l" .code start: mov ebx, offset in_str print ebx print chr$(13,10) xor ecx, ecx mov dl, 'X' l1: mov al, byte ptr [ebx+ecx] cmp al, 0 je l3 cmp al, rp_char jne l2 mov byte ptr [ebx+ecx], dl l2: inc ecx jmp l1 l3: print ebx print chr$(13,10) ret end start В результате: Цитата PS D:\Development\Asm\test> ./main
Hello, world! HeXXo, worXd! Сообщение отредактировал Amp - May 13 2007, 23:45 -------------------- |
|
|
![]() ![]() |
![]() |
Текстовая версия | Сейчас: 3rd July 2025 - 11:39 |