關於 inline assembly 求救

如果您覺得您的問題不屬於 debian desktop 或是 debian server 版的範圍內,請在這裡發問。

版主: mufa

關於 inline assembly 求救

文章rz600000 » 週五 12月 26, 2008 9:24 pm

這是我在網路上看到中正大學的一個題目

我解不太出來 有人會嗎

使用linux At&T的語法

main.c

------------------------------------------------------------------------------
---------------
#include <stdio.h>
int str_len(char *);
int str_sort(char *);
void main(int argc,char *argv[])
{
char *src_string=argv[1];
char *sorted_string;
int length=0;



length_string=str_len(src_string);
sorted_string=str_sort(src_string);

printf("length:%d\n",length);
printf("string after sorting :%s\n",sorted_string);

}

int str_len(char *str_1)
{
int __res;
__asm__ __volatile__(



);
return __res;
}

char *str_sort(char *str_1,char *str_2)
{
char *__res;
__asm__ __volatile__(

);
return __res;
}


----------------------------------------------
題目要求:

自行在 str_len 或 str_sort 函式中宣告自己需要的C變數
以傳入inline assembly中或是接收inline assembly輸出
但除了宣告C變數跟return以外
所有operation都必須在asm();中完成

輸出結果:
input--> ./main bcda

output--> length = 4
string after sorting : abcd

感謝
rz600000
可愛的小學生
可愛的小學生
 
文章: 44
註冊時間: 週日 10月 22, 2006 10:18 pm

回到 debian misc

誰在線上

正在瀏覽這個版面的使用者:沒有註冊會員 和 1 位訪客