ir:(intermediaterepresentation)llvm 中間表示,是一種llvm的中間語言。我們先來寫乙個小例子:test.c:ir 的三種表現形式:二進位制檔案.bc、人類可閱讀檔案.ll、記憶體的表達;
cfg:(control flow graph)控制流圖
#linux下code
vim test.c
#include int main(void)
printf("\n");
return 0;
}
這是乙個循壞,為了增加複雜度,我加了乙個 if 語句。
#用gcc(或clang)來編譯一下,看看執行結果
$ gcc -o test test.c
$ clang -o test test.c
#生成 test 可執行檔案
$ ./test
#執行結果:
123
可用llvm來生成ir
clang -c -emit-llvm test1.c -o test1.bc編譯產生位元組碼生成「.ll」檔案clang -s -emit-llvm test.c -o test.ll編譯產生視覺化位元組碼
#linux下code
clang -s -emit-llvm test.c -o test.ll
生成的』.ll』檔案部分截圖
使用opt呼叫pass
opt -dot-dom test.ll
生成 dom.main.dot 檔案
根據 dom.main.dot 檔案生成cfg
dot -tpng -o test.png dom.main.dot
就出現了開啟test.png
你可以選擇將linux下的.png傳到windows上開啟這裡我提供乙個python指令碼
# -*- coding:utf-8 -*-
#初始化引數:
host = "10.3.0.207"
port = 22
timeout = 30
user = "root"
password = "******"
import paramiko
def sftp_down_file(server_path, local_path):
try:
t = paramiko.transport((host, 22))
t.connect(username=user, password=password)
sftp = paramiko.sftpclient.from_transport(t)
sftp.get(server_path, local_path)
t.close()
#python2.*版本
except exception, e:
print e
'''#python3.*版本
except exception as error:
print (error)
'''if __name__ == '__main__':
sftp_down_file("/root/test.png", "d:/test.png")
#linux下路徑可用 "pwd" 命令來檢視
在windows下 d盤就可以找到這個了
ASP生成靜態頁小例子
先是index.asp檔案當然也可以用html的檔案 然後是send.asp這個就是生成靜態頁的檔案 function chan time shijian 轉換日期時間函式 s year year shijian if len s year 2 then s year 20 s year s mon...
AJAX的小例子
檔案 div.html 檔案test.pl c perl bin perl.exe printenv demo cgi program which just prints its environment print content type text html n n print content t...
Sqlite 的小例子
第一步,搞乙個資料庫幫助類,繼承sqliteopenhelper類 第二步,寫乙個activity,用來對資料庫實現相關操作 第三步,當然不可缺少布局檔案,相當簡單,就不再貼 了 第四步,執行結果 05 10 03 43 50.959 info system.out 15420 資料已經存在!05 ...