原创 從0在windows上一次性上傳本地整個項目(包含所有文件/文件夾)到 Github

1.註冊並登陸Github。2.登陸進去之後的頁面,點擊這個“庫”,這表示你在Github上上的代碼倉庫,我這裏已經創建過一個了,所以數量是13.在倉庫選項卡中,點擊“新建”按鈕添加一個項目。4.爲了不廢話我就翻譯成了中文頁面,這裏填寫好

原创 0x7c00引導地址詳解

0x7C00是BIOS加載MBR到內存時的起始地址,操作系統或者引導程序必須假設它們的彙編代碼從內存的0x7C00地址開始。 這時 你可能會想: 1

原创 hello-os註釋

;hello-os註釋 ;TAB=4 ORG OX 7c00;指明程序的裝載地址,ORG指令,意思是文件開始執行的時候,把這些機器語言裝載到內存那個地址。其次是7c00這個位置,再內存中Ox00007c00-Ox00007cff這段位置表

原创 通俗瞭解字符編碼

首先,我先在這淺談一下本人對字符編碼的認識,說得不對的地方懇請大家批評指正。 目前的 字符編碼 大體上分三種  1.單字節字符集,用1個字節來表示一個字符,如ASCII就屬於這種  2.多字節字符集, 其實在windows下這類字符集大體

原创 王爽-《彙編語言2》學習筆記2

8086CPU的14個寄存器:AX、BX、CX、DX、SI、DI、SP、BP、IP、CS、SS、DS、ES、PSW。 ##############################################以下爲寄存器的英文全稱,內容

原创 王爽-《彙編語言2》筆記3

8086CPU有4個  段 寄存器:CS、DS、SS、ES. CS爲代碼段寄存器    IP爲指令指針寄存器 任意時刻,CPU將CS:IP指向的內容當做指令執行。也就是說,CS和IP指向的地址就是 CPU要執行的指令的地址。 在內存中,指

原创 王爽-《彙編語言2》學習筆記1

彙編由3類指令組成:。    1.彙編指令:機器碼的助記符,有對應的機器碼。(彙編語言的核心,它決定了彙編語言的特性)。    2.僞指令:沒有對應的機器碼,由編譯器執行,計算機並不執行。    3.其他符號:如+、-、*、/、等,由編譯

原创 C++11併發編程-01(線程的啓動、傳參)

啓動一個線程 #include <iostream> #include <thread> int main() { std::cout << "thread starting..." << std::endl; std:

原创 Ubuntu14.04添加鼠標右鍵new_empty_file菜單

執行命令: sudo apt-get install python3-gi python-nautilus mkdir -p ~/.local/share/nautilus-python/extensions gedit ~/.lo

原创 可引導MBR的利用

起始地址: Org 0x7c5a 因爲程序真正的位置在rufus的加載程序的5a偏移地址處,可以理解爲rufus的loader在0x7c00,所以我們的程序在0x7c5a。 5ah=90 程序結尾處也變成了 510-90-(− $

原创 Cocos2dx/NDK .a靜態庫的製作與使用

實驗目的:把mylib.a 中的 myfunc 暴露給其它源程序調用。 1. 如何製作NDK可用的.a靜態庫? 整個製作流程最好分2個目錄來進行: 1. 新建一個 mylibsrc 目錄用來存放源碼並將其編譯成.a靜態鏈接庫。 2.

原创 選擇排序C++實現

選擇排序的思想:    假設要從小到大排序n個數,第一步首先在這n個數中找到最大的那一個數,然後將其和arr[n-1]也就是數組最後一個元素交換,接下來再在0~n-2之間找剩下的元素中最大的,再將其和n-2也就是倒數第一個位置的元素交換,

原创 自制操作系統——01(Hello,world!)

boot.asm 程序代碼: org 0x7c00;加載本程序至內存0x7c00處,如果省略,那麼標號後面必須手動加上0x7c00 mov bp,szBuffer;將標號地址賦值給bp mov ah,0x0e;顯示字符(ah值的選擇可參考

原创 快速排序C++實現

算法思想:    將一個長度爲n(n>0)的數組進行從小到大的順序排列。快速排序首先需要在該數組中找任意一個元素出來作爲比較基準(pivot),這裏假設找的pivot爲當前數組的最後一個元素,即 arr[n-1],那麼接下來在arr[0]

原创 QT讀取網絡圖片

QUrl url("http://pic.baike.soso.com/p/20090711/bki-20090711100323-24213954.jpg"); QNetworkAccessManager man