① 怎麼把C語言轉化為相應對機器語言
以GCC編譯器為例,可以分為四步。
第一步是預處理,包括語法檢查等工作。
gcc -P abc.c
第二步由源程序生產匯編語言代碼。
gcc -S abc.c
會生成abc.s文件,這個文件里就是匯編掘岩代碼。
第三步編譯器生成目標代碼,一個源文件生成一個目標代碼。
gcc -c abc.c
會生成abc.o
第四步連接器從目標代碼生成可執行文件。
gcc abc.o
目標代碼包括機器碼和符激山號表(函數及變數名)。連接器的主要作用是通過符號表在庫文件和其他模塊中找到在判鉛御目標代碼中引入或未定義的符號(函數及變數名),將幾個目標代碼合成可執行文件。
② 怎樣把一下的C語言程序改成java程序
修改成Java後的代碼:
publicclassDemo{
publicstaticintgcd(inta,intb,intc){
intmin,i;
if(a>b){
if(b>c){
min=c;
}else{
min=b;
}
}else{
if(a>c){
min=c;
}else{
min=a;
}
}
if(b>c){
if(c>a){
min=a;
}else{
min=c;
}
}else{
if(b>a){
min=a;
}else{
min=b;
}
}
if(a>c){
if(c>b){
min=b;
}else{
min=c;
}
}else{
if(a>b){
min=b;
}else{
min=a;
}
}
for(i=min;i>=1;i--){
if(a%i==0&&b%i==0&&c%i==0){
break;
}
}
returni;
}
publicstaticvoidmain(String[]args){
inta=1,b=0,c=0,i,k=0,j=0,m=0,n=0,z,y;
while(a<9){
b=1;
while(b<9){
c=1;
while(c<9){
if(gcd(a,b,c)==1){
System.out.println(a+";"+b+";"+c);
k++;
z=b*b-4*a*c;
if(z==0){
j++;
}elseif(z>0){
m++;
for(y=1;y<z/2;y++){
if(y*y==z){
System.out.println("解答是有理數。");
}
}
}else{
n++;
}
}
c++;
}
b++;
}
a++;
}
System.out.println("N="+k);
System.out.println("N2="+j);
System.out.println("N3="+m);
System.out.println("N4="+n);
i=gcd(a,b,c);
}
}
③ 請問C語言如何轉換成匯編語言
分類: 電腦/網路 >> 程序設計 >> 其他編程語言
問題描述:
請問C語言如何轉換成匯編語言?請問用什麼工具可以實現?
請大家幫我把這個C語言轉換成匯編語言下,謝謝!
59秒自動計數器
#include<reg51.h>
#define uchar unsigned char
uchar j,k,i,a,A1,A2,second;
*** it la=P2^6;
*** it wela=P2^7;
uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,
0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};
void delay(uchar i)
{
for(j=i;j>飢喊猜0;j--)
for(k=125;k>0;k--);
}
void display(uchar sh_c,uchar g_c)
{
la=0;
P0=table[sh_c];
la=1;
la=0;
wela=0;
P0=0xfe;
wela=1;
wela=0;
delay(5);
P0=table[g_c];
la=1;
la=0;
P0=0xfd;
wela=1;
wela=0;
delay(5);
}
void main()
{
while(1)
{
second++;
if(second==60)
second=0;
A1=second/10;
A2=second%10;
for(a=50;a>0;a--)
{ display(A1,A2);};
}
}
十分感謝,小弟初學,請見諒!!
解析:
你做的是單片機的C,那你用KEIL就可以進行反匯編。找到view->disassembly就可滲森以看爛型到匯編代碼。
④ 如何將c語言程序轉成匯編語言程序。
如果是VC則在編譯器命令行參數再加 /FA 則會生成匯編代碼。如果參數是 /FAs 則會同時將源碼和匯編代碼。
/FA 程序集代碼;.asm
/FAc 機器碼和程序集代碼;.cod
/FAs 源代碼和程序集代碼;.asm
/FAcs 機器碼、源代碼和程序集碼;.cod
/Fa的用法
/Fa 為編譯中的每個源代碼文件創建一個源文件.asm。
/Fa文件名 將文件名.asm 放到當前目錄中。僅在編譯單個源代碼文件時有效。
/Fa文件名.擴展名 將文老侍件名.擴展名放到當前目錄中。僅在編譯單個侍旁吵源代碼文件時有效。
/Fa目錄\ 為編譯中的每個源代碼文件創建一個源文件.asm,並將其放到指定目錄中。請注意必須有後綴反斜杠。只允許使用當前磁碟上的路徑。
/Fa目錄\文件名 將文件名.asm 放到指定目錄中。僅在編譯單個源代碼文件時有效。
/Fa目錄\文件名.擴展名 將文件名.擴展名放到指定目錄中。僅在編譯單個源代碼文件時有效。
如果你是用啟模gcc 或 g++編譯器,如dev c++則加入命令行參數 -S 即可
⑤ 怎麼把c語言轉換成匯編語言
理論上來說C語言改成匯編是完全可以的,當然實際上還是有一定難度。
1、完全手工根據C語言的流程和目的,改編成匯編語言,這樣做工作量很大
2、利用模擬軟體,在模擬環境下,是有相應的匯編代碼的,這樣做工作量相對較小,但可讀性較差。