『壹』 如何用c語言實現十進制文件轉化成二進制文件
10進制轉化為2進制的演算法非常簡單,不斷除以2,每次的余數為低位數,直到數為0。
可使用簡單的遞歸實現這一過程。常式如下:
#include<stdio.h>
voidfun(inti)//定義變數i;
{
if(i>1)
fun(i/2);//變數i除2;
printf("%d",i%2);//輸出i除以2的余數;
}
intmain(){
intn;
scanf("%d",&n);
fun(n);//調用遞歸函數
return0;
}
用py2exe 打包成可以執行文件
『叄』 C/C++語言編譯生產可執行的二進制文件的過程求大神詳盡解釋,
預編譯。編譯器將你的.c、.cpp源代碼,通過解釋其中的預編譯指令,將源代碼轉換成相應的沒有任何預編譯指令的代碼。
編譯、優化。將上一步的代碼編譯成匯編指令,並作一定優化,形成對應的.s匯編代碼
匯編。將.s文件匯編成機器碼,形成對應的.o目標文件,此時是不可執行的二進制文件。生成對應的清單文件。為了連接需要,還會生成未定向符號表、導出符號表、地址重定向表等等。
連接。先根據對應的清單文件、連接文件及之間的調用關系,決定所有的目標文件及引用的庫文件在最後可執行文件中的位置;然後做一些其他事情,比如根據符號表等將目標文件中的符號地址補全等等;最終得到可執行文件。
這只是我個人的簡單理解,更詳盡的解答都可以寫成好幾本書了=_=望採納~
『肆』 如何將文件轉換成二進制文件
您好。
將其導入ultra
edit,裡面有導出二進制文件選項
有各最簡單的方法,windows其實自帶了一個這樣的工具exe2bin.exe在運行里輸入cmd打開msdos方式,裡面輸入
c:\>exe2bin
/?
就可以查看一下這個命令的方式,比如
c:\>exe2bin
c:\a.exe
b.bin
再用記事本查看就可以了,不過這種方法只能對exe文件有效。
如果還有問題,可以繼續追問,感謝。
『伍』 怎樣把文件轉換成二進制形式的文本文件
好吧你不需要工具的話那我直接用C#的源代碼寫一下。
publicvoidwrite010File(stringfilepath)
{
FileStreamfs=newFileStream(filepath,FileMode.Open,FileAccess.Read);
StreamWritersw=newStreamWriter("out.txt");
byte[]buffer=newbyte[2048];
intword=0;
while((word=fs.Read(buffer,0,buffer.Length))>0)
{
//這里將讀入內存的數據使用二進制寫出
for(inti=0;i<word;i++)
{
sw.Write(Convert.ToString(buffer[i],2));
}
}
sw.Close();
fs.Close();
}
將文件路徑傳入就行了,他會轉換為二進制然後輸出到out.txt中。
『陸』 源程序文件是怎樣變成可執行的二進制文件的
通過下面這條命令,main.c和swap.c就產生了一個可執行二進制文件swap》gccmian.cswap.c-oswap那麼這條命令是么樣把源程序變成可執行程序的呢?步驟如下:1、驅動程序首先調用C預處理器(CPP)把源文件翻譯成一個ASCII中間文件mian.i,預處理器會把#include所包含的內容都插入到聲明的位置,並且做宏替換,把main.c文件的第3行的SIZE替換成2(注意這里只是做簡單的文本替換)。2、接下來驅動程序的C編譯器將main.i翻譯成匯編語言程序main.s3、然後驅動程序的匯編器將匯編語言程序main.s翻譯成可重定位的二進制文件main.o4、最後運行鏈接器將main.o與swap.o以及一些必要的系統目標文件(比如你將調用的printf函數就是printf.o)連接起來變成一個可執行的二進制文件。
『柒』 c語言是如何編譯成二進制
計算機專業有門課程叫做《編譯原理》,詳細講述了怎麼把高級語言翻譯成匯編語言活著機器能看懂的二進制代碼。
簡單的說,C語言是通過編譯器翻譯成二進制代碼的(就像英譯漢的軟體把英文翻譯成漢語一樣。把高級語言翻譯成機器語言過程很復雜,學了編譯原理就懂了)。還有編譯器可以用各種語言編寫,C語言可以被用C語言寫的編譯器來編譯。
『捌』 如何用c語言.把文本文件轉換成二進制文件
二進制文件轉換為文本文件是沒有任何實際意義的.
二進制文件和文本文件最根本的區別就是二進制文件在讀寫的時候系統不對文件進行任何處理而交由程序員處理,
而文本文件打開是先由操作系統把文件中而在的\r\n轉換為\n.
因為我們在c語言中寫程序換行只有\n,
但是在windows操作系統中,
換行是\r\n,
是兩字位元組.
如果不作任何處理,
fgetc()
==
'\n'
遇到這類語句將會出現一些小錯誤,
導致文件讀寫失敗.
所以在讀的時候,
系統自動把文件中的\r\n變成\n,
寫的時候把內存中的\n全部轉換成\r\n.
至於為什麼c語言用\n而windows用\r\n,
這是因為c語言是最早出現在linux系統中的,
而linux用的換行只有\n,
所以為了使代碼可移植性較高,
在windows中編寫c程序仍然使用\n,
程序員就不需要去在意這些細節問題了.
『玖』 如何生成二進制(bin)文件
可以去網上下一個Hex2Bin.exe(也可以自己寫一個,非常簡單的小程序),添加到項目的User Command里,每次編譯後將生成的hex文件轉換為bin文件。
MDK自身帶有fromelf.exe,可以將輸出的axf文件直接生成bin文件。
『拾』 windows下如何用gcc 把c編譯成純二進制文件
方法如下: 雙擊GCC安裝包,mingw-get-setup.exe,點擊Install安裝。 點擊Change選擇安裝路徑,盡量不要有中文和空格, 將package 下面的mingw-***和mingw32-***和msys-**。都勾選上,等待下載安裝,直到勾選框全部變成土灰色。 找到安裝目錄的bi