原创 AT&T彙編的尋址方式

AT&T彙編的尋址方式立即數尋址寄存器尋址內存尋址 大多數指令有一個或者多個操作數,指示出執行一個操作中要使用的源數據值,以及放置結果的目的位置。x86-64支持多種操作數格式。 源數據值可以以常數形式給出,或者是從寄存器或內存中

原创 編譯概覽

編譯過程概覽詞法分析語法分析語義分析中間代碼生成目標代碼生成專門針對機器的代碼改進 詞法分析 詞法分析器讀入一個個的字符,並將他們組合成單詞,也就是程序中最小的有意義的單位。詞法分析器的主要作用就是爲了簡化分析器的工作,它能減小輸

原创 AT&T彙編——壓入和彈出棧數據

壓入和彈出棧數據數據的入棧和出棧數據入棧指令數據出棧指令 數據的入棧和出棧 棧在處理函數調用過程中起到至關重要的作用。 棧是一種數據結構,可以添加或刪除值,不過要遵循後進先出的原則。 通過push操作把數據壓入棧中,通過pop操作

原创 ATT彙編學習筆記——數據格式

ATT彙編的數據格式X86-64彙編的數據格式 X86-64彙編的數據格式 C聲明 Intel數據類型 彙編代碼後綴 大小(字節) char 字節 b 1 short 字 w 2 int 雙字 l 4 l

原创 x86-64中的寄存器

x86-64CPU中的寄存器64位CPU中的寄存器32位CPU中的寄存器16位CPU中的寄存器8位CPU中的寄存器 64位CPU中的寄存器 x86-64CPU中共有16個存儲64位值的通用目的寄存器,這些寄存器用來存儲整數數據和指

原创 AT&T彙編——MOV指令

AT&T彙編——MOV指令MOV類指令MOVZ類指令MOVS類指令 MOV類指令 MOV類指令是最簡單的數據傳送指令,這類指令把數據從源位置複製到目的位置,不做任何變化。 MOV類指令由四條指令組成:movb、movw、movl和

原创 Rust中的註釋

Rust中的註釋Rust中的註釋常規代碼註釋文檔註釋 Rust中的註釋 Rust中的註釋主要分成兩類: 1、常規的代碼註釋 2、文檔註釋,主要用於生成HTML格式的庫文檔 常規代碼註釋 單行註釋 單行註釋主要以//開頭,註釋的範

原创 Rust中的格式化輸出

Rust中的格式化輸出格式化輸出println的使用fmt::Debug的使用fmt::Display的使用一個list類型的對象的自定義格式化輸出format的使用 格式化輸出 rust中由一些宏(macro)負責輸出,這些宏定

原创 python中的base64加解密

介紹 Base64是網絡上最常見的用於傳輸8Bit字節碼的編碼方式之一,Base64就是一種基於64個可打印字符來表示二進制數據的方法。可查看RFC2045~RFC2049,上面有MIME的詳細規範。 Base64編碼是從二進制到

原创 DOS批處理中獲取當前路徑的命令

DOS批處理中%cd%和%~dp0的區別 在DOS的批處理中,有時候需要知道當前的路徑。 在DOS中,有兩個環境變量可以跟當前路徑有關,一個是%cd%, 一個是%~dp0。 這兩個變量的用法和代表的內容是不同的。 %cd% 可

原创 windows程序設計(滾動條)

文章轉載鏈接:http://www.cppblog.com/szhoftuncun/archive/2008/01/22/41675.html 下面這篇文章來自博客園的一篇文章,這篇文章解釋了我在學習windows程序設計一書中,看到的關

原创 WINDOWS程式設計--文字和字體

顯示文字是本書所要解決的首要問題,現在我們來研究Microsoft Windows中各種有效字體和字體大小的使用方法以及調整文字的方式。 Windows 3.1發表的TrueType使程式寫作者和使用者以靈活的方式處理文字的能力大幅增強。

原创 面試札記

今天去參加了國內通訊行業的龍頭企業的面試,職位是自動化軟件測試工程師,這是一個很火的方向,在目前看來。 主要要求用python來進行軟件自動化測試。筆試部分很簡單沒什麼難的,主要是智力測試,看代碼發現錯誤,還有就是測試用例的設計。由於沒接

原创 C指針讀書筆記

標準輸入函數scanf,有返回值,返回值是函數成功轉換並存儲於參數中的值的個數。 比如說,scanf("%d", i)成功執行的返回值是1.

原创 函數調用約定

最近在看《windows程序設計》一書,在書中看到使用windows函數的時候,要在函數前面加上WINAPI這樣一個關鍵字。WINAPI 是在WINDEF.H中定義的,其定義如下 #define WINAPI __stdcall 其中__