Написал линейное уравнение на ассемблере, как проверить результат программы?
Ниже код программа, возможно неправильный
12345678910111213141516171819202122232425262728293031323334
; d = (k-5)^2/4+2*k
.386
.model flat,stdcall
option casemap: none
include C:\masm32\include\windows.inc
include C:\masm32\include\kernel32.inc
includelib C:\masm32\lib\kernel32.lib
.data
k sword 7
.data?
d sword ?
.code
start:
xor eax,eax
mov ebx,0
mov edx,0
mov ecx,0
mov ecx,k
imul 2
add ecx,4
mov eax,k
sub eax,5
imul eax
idiv ecx
mov d,eax
invoke ExitProcess,NULL
end start
Как вывести результат в консоль?
По дате
По рейтингу
Посмотри здесь через GetStdHandle / WriteConsole
https://stackoverflow.com/questions/10664451/x86-assembly-getstdhandle-writeconsole
в отладчике
; d = (k-5)^2/4+2*k
.386
.model flat,stdcall
option casemap: none
include \masm32\include\msvcrt.inc
includelib \masm32\lib\msvcrt.lib
.data
k sword 7
output db "d = %d\n", 0 ; строка-шаблон для вывода результата
.data?
d sword ?
.code
start:
; Вычисляем d
xor eax,eax
mov ebx,0
mov edx,0
mov ecx,0
mov ecx,k
mul 2
add ecx,4
mov eax,k
sub eax,5
imul eax
idiv ecx
mov d,eax
; Выводим d в консоль
invoke printf, addr output, d
invoke ExitProcess,NULL
end start
загрузку
к - где?