2013年5月15日 星期三

Data Segment

rodata

變數被定義為const或者是固定字串

text

程式指令的部分

data

有初始值的global variable

bss

沒有初始值的global variable

heap

dynamic memory,透過malloc等function取得的。

stack

local variables

2013年5月13日 星期一

面試必備 -- BIT MASK

Set Specific Bit

value = value | (1 << bit)

#define SET_BIT(x, y) ((x) = (x) | ((1)<<(y)))

Clear Specific Bit

value = value & ~(1 <<bit)

#define CLEAR_BIT(x, y) ((x) = (x) & ~((1)<<(y)))

Inverse Specific Bit

value = value ^ (1 << bit)

#define INVERSE_BIT(x, y) ((x) = (x) ^ ((1)<<(y)))

Get Specific Bit

ret = (value >> bit) & 1

#define GET_BIT(x, y) ((x)>>(y) & 1)

Bit Count

code:
int counter = 0;
while ( input ) {
    counter++;
    input &= (input - 1);
}

2013年5月2日 星期四

棒球英文用語

棒球英文用語

職棒聯盟:

  • CPBL - Chinese Professional Baseball League
  • MLB - Major League Baseball
  • NPB - Nippon Professional League

野手名稱

  • Pitcher - 投手
  • Catcher - 捕手
  • Infielder - 內野手
    • First Baseman - 一壘手
    • Second Baseman - 二壘手
    • Third Baseman - 三壘手
    • Shortstop - 游擊手
  • Outfielder - 外野手
    • Left Fielder - 左外野手
    • Right Fielder - 右外野手
    • Center Fielder - 中外野手
專業術語
  • 安打
    • one-base hit - 一壘安打
    • two-base hit - -二壘安打
    • three-base hit - 三壘安打
    • home run - 全壘打
  • 投球
    • strikeout - 三振
    • walks / base on balls - 四壞

2013年5月1日 星期三

面試必備 -- 數值swap

數值swap

程式碼:

int swap(int a, int b) {
    a = a^b;
    b = a^b;
    a = a ^b;
}

面試必備 -- 計算幾個bit為1

計算幾個bit為1

常見基本面試考題
  • 基本bit mask概念
  • 數學概念
程式碼:

while (input) {
    counter++;
    input &= (input -1);
}