Valaki segítene, ezt a programot megírni HLA-ban?
procedure Fgv5 (VAL V1:uns64; VAR V2:uns16; RESULT R:uns64); @use EAX; @external;
procedure Fgv5 (VAL v1:uns64; VAR V2:uns16; RESULT R:uns64);
Begin Fgv5; //R=V1*V2, ill EAX=(R=0)? 0:1
Bocsi.
Nem néztem, hogy szorzás, de a magasszintű nyelven való megirás és debugolás segithet.
Üdv.
Szia.
Itt van a delphi kód és a debugja lreméle, hogy segit valamit :
program Project1;
Uses SysUtils;
var v1 : int64 ;
v2 : longint ;
r1 : int64 ;
s1 : string ;
begin
V1:=11111;
v2:=1111;
r1:=v1*v2;
s1:=inttostr (r1);
end.
MOV DWORD PTR DS:[409798],2B67
MOV DWORD PTR DS:[40979C],0
MOV EBX,457
MOV EAX,EBX
CDQ
PUSH EDX ; /Arg2 = 0
PUSH EAX ; |Arg1 = 457
MOV EAX,DWORD PTR DS:[409798] ; |ASCII "g+"
MOV EDX,DWORD PTR DS:[40979C] ; |
CALL 00403B6C ; \Project1.00403B6C
MOV DWORD PTR DS:[4097A0],EAX
MOV DWORD PTR DS:[4097A4],EDX
PUSH DWORD PTR DS:[4097A4] ; /Arg2 = 0
PUSH DWORD PTR DS:[4097A0] ; |Arg1 = 0BC5C01
:00403B6C
PUSH EDX ; Project1.00403B6C(guessed Arg1,Arg2)
PUSH EAX
MOV EAX,DWORD PTR SS:[ARG.2]
MUL DWORD PTR SS:[LOCAL.1]
MOV ECX,EAX
MOV EAX,DWORD PTR SS:[LOCAL.0]
MUL DWORD PTR SS:[ARG.1]
ADD ECX,EAX
MOV EAX,DWORD PTR SS:[LOCAL.1]
MUL DWORD PTR SS:[ARG.1]
ADD EDX,ECX
POP ECX
POP ECX
RETN 8
RETN
Sok sikert.
Üdv.
Kapcsolódó kérdések:
Minden jog fenntartva © 2025, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!