1
我一直負責做一些彙編工作。一切都很順利,直到我不得不將一個程序從使用int轉換爲float。我可能錯過了一些簡單的嘗試,但是有沒有人有建議?我將提供可用的int版本。似乎找不到數組中最大的浮點數,使用內聯彙編
#include <stdio.h>
int n;
int i;
int arr[50];
int output;
int main(void)
{
scanf("%d", &n);
for (i = 0; i < n; i++)
{
scanf("%d", &arr[i]);
}
__asm
{
jmp start
switching:
mov eax, ebx
jmp looping
looping:
mov ebx, arr[ecx*4]
inc ecx
cmp ebx, eax
jg switching
cmp ecx, n
jl looping
ret
start:
mov ecx, 0
mov eax, 0
call looping
mov output, eax
}
printf("%d", output);
scanf("%d", &n);
}
我們怎麼用花車來幫助,如果你發佈INT版本? – 2012-01-27 16:30:22
我只是想要一些指針,如果我將不得不在使用浮動時更改任何條件操作碼。 – Ryan 2012-01-27 16:34:43
如果您的浮點數都是非負數,則查找最大(單精度)浮點數和查找最大(32位)整數的程序集應該是相同的。 – 2012-01-27 16:37:19