1.ascii
0x0代表nul符號,常用來表示字符串結(jié)束的標志
字符'0',實際值0x30,
2.模電中會學(xué)到
邏輯非,也就是非0,狹義上講"不是0,就意味著是1",因為計算機硬件高低電平只有這兩種狀態(tài).
引申到編程中,本質(zhì)上講,其實這是編譯器的行為,看它是如何解讀這個符號的.編譯器,遇到"非零"
就會理解成,這個數(shù)可能是零以外的的任何數(shù).接著,又跟條件語句有關(guān)了.
比如
if(x!0)//只要x不為零,這個判定條件就成立.請區(qū)別這里關(guān)系,這屬于if的語法范疇了.
{
.....
}
當然,我們也可以簡單地理解為:0false,1true.
3.mask,作掩碼用
001
100->
111
應(yīng)用最廣了,
第一,如果上面的用于一個圖像(3x3大小,簡單起見),那這些數(shù)據(jù)其實就是幫助信息,輔助用的.圖像本身存儲著顏色信息,然后每一點,都會和相應(yīng)的這些數(shù)據(jù)去乘,這樣0處的地方就變透明了.
第二,就是把0當作通過的標志,如用于一個迷宮地圖.0表示pass1就表示break
第三,最常見的用法,將一個數(shù)去與另一個數(shù)(mask用),就是要取到感興趣的數(shù)據(jù)的某一位或某幾位
如x&0001,(x=15,他的二進制表示為1111,1111&0001,結(jié)果就是高三位全變?yōu)?了.也就是從二進制層面來講,只取到最低的那位數(shù).)一種應(yīng)用就是以此來判斷,手柄按扭是否按下(當然,掩碼是不同的,)
4.最本質(zhì)的.
0,1作為機器碼,它們組合起來構(gòu)成一條條指令.
這也是計算機組成中講的那套,
代碼操作數(shù),操作數(shù)(應(yīng)指令形式,有不同表示)