Register,Abbreviation,Purpose

x0,zero,Zero register (always zero)

x1,ra,Return address register

x2,sp,Stack pointer register

x3,gp,Global pointer register

Mk 發表在 痞客邦 留言(0) 人氣()

  • tar指令 (.tar檔和.tar.gz檔)

打包成tar檔

tar -cf foo.tar foo

Mk 發表在 痞客邦 留言(0) 人氣()

man vs man 3

man 3是manual page 的section 3的意思, 而section 3 for linux的c std library usage

man page section:

1. user commands

2. syscalls

Mk 發表在 痞客邦 留言(0) 人氣()

[mac terminal hotkey]

create a new split window: command + d

close a split window: command + shift + d

Mk 發表在 痞客邦 留言(0) 人氣()

[ctrlp]

open ctrlp -> in vim, ctrl + p

back last change -> ctrl + u

open file in new vim tab -> ctrl + T

open file in new vim vertical splited window -> ctrl + v

Mk 發表在 痞客邦 留言(0) 人氣()

vim in normal mode:

[移動游標]

move {up, down, left, right}: {j, k, h, l }

move to next word {start, end}: {w, e }

move to next word $n times: $n + {w, e }

Mk 發表在 痞客邦 留言(0) 人氣()

1. float, double差別?

2. call by reference 安全性?

3.何將兩個超過long長度的數字相加

4.fenwick, native, prefix number tree

Mk 發表在 痞客邦 留言(0) 人氣()

merge sort演算法使用Divide & conquer概念,

是將一個數列用二分法不斷拆分成更小的子數列直到無法在拆分,

接著將最小的子序列排序好後merge回高一層的子數列排列直到全部排序完成.

此排序演算法可以達到O(nlogn)的時間複雜度以及O(n)的複雜度.

概念讓就像玩撲克牌時拿到了一手牌,

Mk 發表在 痞客邦 留言(0) 人氣()

1. 安裝qemu

$ sudo apt-get install qemu qemu-kvm

2. 創建一個 qemu的img, 給予8G的虛擬空間

$ qemu-img create linux.img 8G

3. 使用linux image開機

Mk 發表在 痞客邦 留言(0) 人氣()

首先在編譯app時, 編譯選項需要帶-g

之後要debug時可以透過以下幾個基本指令

1. 進入/離開gdb指令介面

$ gdb -q (執行檔)

$ (gdb) q

Mk 發表在 痞客邦 留言(0) 人氣()

首先必須先確定電腦有安裝cscope

安裝指令:

$ sudo apt-get install cscope

安裝完成後

僅需以下兩個指令

Mk 發表在 痞客邦 留言(0) 人氣()

常常看到makefile裡編譯指令帶了一大堆參數

這篇來整理幾個比較常見的compile option

-c : 只編譯(未包含連結)

-o : 生成可執行文件的輸出選項

-I : 指定header檔案放置的路徑

Mk 發表在 痞客邦 留言(0) 人氣()

1 2 3
Blog Stats
⚠️

成人內容提醒

本部落格內容僅限年滿十八歲者瀏覽。
若您未滿十八歲,請立即離開。

已滿十八歲者,亦請勿將內容提供給未成年人士。