機器碼,學名機器語言指令,有時也被稱為原生碼,是電腦的CPU可直接解讀的數(shù)據(jù)。
字節(jié)碼是一種中間狀態(tài)(中間碼)的二進制代碼(文件)。需要直譯器轉(zhuǎn)譯后才能成為機器碼。
什么是機器碼
機器碼(machinecode),學名機器語言指令,有時也被稱為原生碼(NativeCode),是電腦的CPU可直接解讀的數(shù)據(jù)。
通常意義上來理解的話,機器碼就是計算機可以直接執(zhí)行,并且執(zhí)行速度最快的代碼。
總結(jié):機器碼是電腦CPU直接讀取運行的機器指令,運行速度最快,但是非?;逎y懂,也比較難編寫
什么是字節(jié)碼
字節(jié)碼(Bytecode)是一種包含執(zhí)行程序、由一序列op代碼/數(shù)據(jù)對組成的二進制文件。字節(jié)碼是一種中間碼,它比機器碼更抽象,需要直譯器轉(zhuǎn)譯后才能成為機器碼的中間代碼。
總結(jié):字節(jié)碼是一種中間狀態(tài)(中間碼)的二進制代碼(文件)。需要直譯器轉(zhuǎn)譯后才能成為機器碼。
-----------
#is比較的是內(nèi)存地址
#==比較的是值
#int具有范圍:-5---256
#對于int小數(shù)據(jù)池
范圍:-5----256創(chuàng)建的相間的數(shù)字,都指向同一個內(nèi)存地址
#對于字符串(面試)
1、小數(shù)據(jù)池如果有空格,那指向兩個內(nèi)存地址,
2、長度不能超過20
3、不能用特殊字符
i='a'*20
j='a'*20
print(iisj)#True
i="a"*21
j="a"*21
print(iisj)#False
關(guān)于編碼所占字節(jié)
unicode:所有字符(無論英文、中文等)1個字符:2個字節(jié)
gbk:一個字符,英文1個字節(jié),中文兩個字節(jié)
utf-8:英文1個字節(jié)、歐洲:2個字節(jié),亞洲:3個字節(jié)
在utf-8中,一個中文字符占用3個字節(jié)
在gbk中一個漢字占用2個字節(jié)
黎詩=utf-8(6字節(jié))=48
黎詩=gbk(4字節(jié))=32
字節(jié)和位的關(guān)系。
#一個字節(jié)(byte)=8位(bit)
#位為最小的單位
簡述變量命名規(guī)范
#1、以字母,數(shù)字,下劃線任由結(jié)合
#2、不能以命名太長,不使用拼音,中文
#3、不能以數(shù)字開頭
#4、不能用關(guān)鍵詞
以上內(nèi)容為大家介紹了python字節(jié)碼和機器碼的區(qū)別,希望對大家有所幫助,如果想要了解更多Python相關(guān)知識,請關(guān)注IT培訓機構(gòu):千鋒教育。