Я написал код c: преобразовать целое число в строку и запятую каждые 3 цифры, и может ли кто-нибудь дать мне подсказку, как преобразовать его в ассемблере ??? Я просто хочу просто преобразовать его в ассемблере! Невозможно использовать другой вызов библиотеки!конвертировать c язык в язык ассемблера IA32
#include <stdio.h>
char *my_itoa(int n, char *buf)
{
int i, j, k=0, l=0;
char tmp[32] = {0};
i = n;
do {
j = i%10;
i = i/10;
sprintf(tmp+k, "%d", j);
k++;
l++;
if (i!=0 && l%3 == 0) {
sprintf(tmp+k, ",");
k++;
l = 0;
}
}while(i);
for (k--,i=0; i<=k; i++) {
buf[i] = tmp[k-i];
}
return buf;}
Подсказка: 'НКУ -S'. – interjay
Вы можете скомпилировать его с помощью gcc и сбросить сгенерированную сборку с флагом -S. – VAndrei
Обратите внимание, что это может быть довольно сложно, так как sprintf(), вероятно, является функцией динамической библиотеки. –