Всем , привет , кто разбирается , помогите пожалуйста , нужно сложить все числа массива . Работает неправильно , выводит всегда значение регистра ecx . ; ««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««« .386 ; create 32 bit code .model flat, stdcall ; 32 bit memory model option casemap :none ; case sensitive ; include files ; ~~~~~~~~~~~~~ include \masm32\include\windows.inc ; main windows include file include \masm32\include\masm32.inc ; masm32 library include ; ------------------------- ; Windows API include files ; ------------------------- include \masm32\include\gdi32.inc include \masm32\include\user32.inc include \masm32\include\kernel32.inc include \masm32\include\Comctl32.inc include \masm32\include\comdlg32.inc include \masm32\include\shell32.inc include \masm32\include\oleaut32.inc include \masm32\include\ole32.inc include \masm32\include\msvcrt.inc include \masm32\include\dialogs.inc ; macro file for dialogs include \masm32\macros\macros.asm ; masm32 macro file ; libraries ; ~~~~~~~~~ includelib \masm32\lib\masm32.lib ; masm32 static library ; ------------------------------------------ ; import libraries for Windows API functions ; ------------------------------------------ includelib \masm32\lib\gdi32.lib includelib \masm32\lib\user32.lib includelib \masm32\lib\kernel32.lib includelib \masm32\lib\Comctl32.lib includelib \masm32\lib\comdlg32.lib includelib \masm32\lib\shell32.lib includelib \masm32\lib\oleaut32.lib includelib \masm32\lib\ole32.lib includelib \masm32\lib\msvcrt.lib ; ««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««« ; ************************************************************************ ; include \masm32\include\masm32rt.inc ; ************************************************************************ .data? ;Result dd ? ;lpBuf1 db 1024 dup(?) ; temp Buffers .data res2 dd 0 i dd 0 mas dd 1,2,3,4,5,6,7 sum dd 0 buffer_for_string db 10 dup(0) title_string db "Результат: ",0 szformat db "%d",0Dh,0Ah,0 ; .code start: ; ************************************************************************ main proc ; LOCAL Result :DWORD ; LOCAL var_00 :DWORD ; LOCAL var_01 :DWORD ; Затем здесь(ниже) запишите решение. ; Записи возможны только до начала следующей линии решетки ... ; ########################################################################### mov ecx,10 mov esi,0 xor ebx,ebx mov ebx,offset mas m1: mov edx,[ebx] add sum,edx add esi,4 loop m1 ; ########################################################################### push sum push offset szformat push offset buffer_for_string call wsprintf push MB_OK push offset title_string push offset buffer_for_string push 0 call MessageBox push 0 call ExitProcess main endp ; ************************************************************************ end start Код ; ««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««« .386 ; create 32 bit code .model flat, stdcall ; 32 bit memory model option casemap :none ; case sensitive ; include files ; ~~~~~~~~~~~~~ include \masm32\include\windows.inc ; main windows include file include \masm32\include\masm32.inc ; masm32 library include ; ------------------------- ; Windows API include files ; ------------------------- include \masm32\include\gdi32.inc include \masm32\include\user32.inc include \masm32\include\kernel32.inc include \masm32\include\Comctl32.inc include \masm32\include\comdlg32.inc include \masm32\include\shell32.inc include \masm32\include\oleaut32.inc include \masm32\include\ole32.inc include \masm32\include\msvcrt.inc include \masm32\include\dialogs.inc ; macro file for dialogs include \masm32\macros\macros.asm ; masm32 macro file ; libraries ; ~~~~~~~~~ includelib \masm32\lib\masm32.lib ; masm32 static library ; ------------------------------------------ ; import libraries for Windows API functions ; ------------------------------------------ includelib \masm32\lib\gdi32.lib includelib \masm32\lib\user32.lib includelib \masm32\lib\kernel32.lib includelib \masm32\lib\Comctl32.lib includelib \masm32\lib\comdlg32.lib includelib \masm32\lib\shell32.lib includelib \masm32\lib\oleaut32.lib includelib \masm32\lib\ole32.lib includelib \masm32\lib\msvcrt.lib ; ««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««« ; ************************************************************************ ; include \masm32\include\masm32rt.inc ; ************************************************************************ .data? ;Result dd ? ;lpBuf1 db 1024 dup(?) ; temp Buffers .data res2 dd 0 i dd 0 mas dd 1,2,3,4,5,6,7 sum dd 0 buffer_for_string db 10 dup(0) title_string db "Результат: ",0 szformat db "%d",0Dh,0Ah,0 ; .code start: ; ************************************************************************ main proc ; LOCAL Result :DWORD ; LOCAL var_00 :DWORD ; LOCAL var_01 :DWORD ; Затем здесь(ниже) запишите решение. ; Записи возможны только до начала следующей линии решетки ... ; ########################################################################### mov ecx,10 mov esi,0 xor ebx,ebx mov ebx,offset mas m1: mov edx,[ebx] add sum,edx add esi,4 loop m1 ; ########################################################################### push sum push offset szformat push offset buffer_for_string call wsprintf push MB_OK push offset title_string push offset buffer_for_string push 0 call MessageBox push 0 call ExitProcess main endp ; ************************************************************************ end start