日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁(yè) > > 架構(gòu)師社區(qū)
[導(dǎo)讀]在計(jì)算機(jī)中,所有的數(shù)據(jù)都是以二進(jìn)制的形式進(jìn)行表示的,也就是說(shuō),在計(jì)算機(jī)中使用0和1來(lái)表示所有的數(shù)據(jù)。

作者個(gè)人研發(fā)的在高并發(fā)場(chǎng)景下,提供的簡(jiǎn)單、穩(wěn)定、可擴(kuò)展的延遲消息隊(duì)列框架,具有精準(zhǔn)的定時(shí)任務(wù)和延遲隊(duì)列處理功能。自開(kāi)源半年多以來(lái),已成功為十幾家中小型企業(yè)提供了精準(zhǔn)定時(shí)調(diào)度方案,經(jīng)受住了生產(chǎn)環(huán)境的考驗(yàn)。為使更多童鞋受益,現(xiàn)給出開(kāi)源框架地址:

https://github.com/sunshinelyz/mykit-delay

PS: 歡迎各位Star源碼,也可以pr你牛逼哄哄的代碼。

數(shù)據(jù)的表示

在計(jì)算機(jī)中,所有的數(shù)據(jù)都是以二進(jìn)制的形式進(jìn)行表示的,也就是說(shuō),在計(jì)算機(jī)中使用0和1來(lái)表示所有的數(shù)據(jù)。而我們?nèi)粘I钪械臄?shù)字都是10進(jìn)制的,那我們平時(shí)使用的數(shù)字如果在計(jì)算機(jī)中表示時(shí)就需要進(jìn)行進(jìn)制的轉(zhuǎn)換。

進(jìn)制轉(zhuǎn)換

R進(jìn)制轉(zhuǎn)10進(jìn)制

R進(jìn)制轉(zhuǎn)10進(jìn)制可以使用按權(quán)展開(kāi)的方法,具體的操作就是:將R進(jìn)制數(shù)的每一位數(shù)值使用R^k^表示,底數(shù)是R,指數(shù)是k。其中,k與該位和小數(shù)點(diǎn)之間的位置有關(guān)。當(dāng)這個(gè)位置位于小數(shù)據(jù)左邊時(shí),k的值是從小數(shù)點(diǎn)向左依次數(shù)的個(gè)數(shù),需要注意的是:緊鄰小數(shù)點(diǎn)的數(shù)字位置為0,接下來(lái)是1,2...依次類(lèi)推。同樣的,如果這個(gè)位置在小數(shù)點(diǎn)的右邊,則緊鄰小數(shù)據(jù)點(diǎn)位置的數(shù)字從-1開(kāi)始,依次向右數(shù)為-2,-3等等,依此類(lèi)推。

例如,我們給出一個(gè)二進(jìn)制數(shù)字,11010101.01,轉(zhuǎn)換為10進(jìn)制數(shù)字為:1 x 2^7^ + 1 x 2^6^ + 0 x 2^5^ + 1 x 2^4^ + 0 x 2^3^ + 1 x 2^2^ + 0 x 2^1^ + 1 x 2^0^ + 0 x 2^-1^ + 1 x 2^-2^。

注:2^7^表示2的7次方。

圖解計(jì)算機(jī)中數(shù)據(jù)的表示形式

再比如,我們給出一個(gè)八進(jìn)制數(shù),76128.01,轉(zhuǎn)換為10進(jìn)制數(shù)字為:7 x 8^4^ +6 x 8^3^ + 1 x 8^2^ + 2 x 8^1^ + 8 x 8^0^ + 0 x 8^-1^ + 1 x 8^-2^

圖解計(jì)算機(jī)中數(shù)據(jù)的表示形式

十進(jìn)制轉(zhuǎn)R進(jìn)制

十進(jìn)制轉(zhuǎn)R進(jìn)制就比較簡(jiǎn)單了,這里我們可以使用短除法。

例如,將十進(jìn)制數(shù)字69轉(zhuǎn)換為二進(jìn)制的過(guò)程如下所示。

圖解計(jì)算機(jī)中數(shù)據(jù)的表示形式

得出短除的結(jié)果后,我們需要將余數(shù)倒過(guò)來(lái)排列即為十進(jìn)制69轉(zhuǎn)換為二進(jìn)制的結(jié)果,所以結(jié)果數(shù)據(jù)為:1000101。

二進(jìn)制與八進(jìn)制互轉(zhuǎn)

二進(jìn)制轉(zhuǎn)八進(jìn)制時(shí),每三位二進(jìn)制數(shù)表示一個(gè)八進(jìn)制數(shù)。因?yàn)樵诎诉M(jìn)制中,總共有8個(gè)基數(shù),分別是0~7,逢8進(jìn)1。而如果要使用二進(jìn)制來(lái)表示時(shí),0的二進(jìn)制為000,7的二進(jìn)制為111,所以,每三位二進(jìn)制數(shù)對(duì)應(yīng)一位八進(jìn)制數(shù)。反過(guò)來(lái),每一位八進(jìn)制數(shù)對(duì)應(yīng)三位二進(jìn)制數(shù)。

具體的劃分策略是,從二進(jìn)制的低位開(kāi)始,從低到高,也就是從右向左,每三位二進(jìn)制數(shù)對(duì)應(yīng)一個(gè)八進(jìn)制數(shù),不足三位的前面補(bǔ)0,例如,我們將二進(jìn)制數(shù):10001110轉(zhuǎn)化為八進(jìn)制數(shù)的過(guò)程,具體如下所示。

圖解計(jì)算機(jī)中數(shù)據(jù)的表示形式

所以,二進(jìn)制數(shù)10001110轉(zhuǎn)化為八進(jìn)制數(shù)的結(jié)果為216。

同理,八進(jìn)制轉(zhuǎn)二進(jìn)制與二進(jìn)制轉(zhuǎn)八進(jìn)制正好相反,八進(jìn)制的每一位對(duì)應(yīng)三位的二進(jìn)制數(shù)。也就是說(shuō),將八進(jìn)制數(shù)的每一位轉(zhuǎn)化成三位的二進(jìn)制數(shù)即可。

二進(jìn)制與十六進(jìn)制互轉(zhuǎn)

在十六進(jìn)制表示的數(shù)字中,總共有15個(gè)基數(shù),為0~15,逢16進(jìn)1。如果要將二進(jìn)制數(shù)轉(zhuǎn)化為十六進(jìn)制數(shù)時(shí),首先要弄清楚每位十六進(jìn)制數(shù)需要多少為二進(jìn)制數(shù)表示。在十六進(jìn)制中,最大的基數(shù)為15,15的二進(jìn)制表示為:1111,最小的基數(shù)為0,0的二進(jìn)制數(shù)為0000,也就是說(shuō),十六進(jìn)制的基礎(chǔ)使用二進(jìn)制表示為 0000~1111,所以,每位十六進(jìn)制數(shù)需要四位二進(jìn)制數(shù)表示。

從二進(jìn)制數(shù)的低位開(kāi)始,也就是從右側(cè)開(kāi)始,每四位二進(jìn)制數(shù)對(duì)應(yīng)一位十六進(jìn)制數(shù)。

例如,我們需要將二進(jìn)制數(shù)10001110轉(zhuǎn)換為十六進(jìn)制數(shù),如下所示。

圖解計(jì)算機(jī)中數(shù)據(jù)的表示形式

注意:在十六進(jìn)制中,分別使用A,B,C,D,E,F代表10,11,12,13,14,15。

所以,二進(jìn)制10001110轉(zhuǎn)化為十六進(jìn)制的結(jié)果為8E。

十六進(jìn)制轉(zhuǎn)二進(jìn)制與二進(jìn)制轉(zhuǎn)十六進(jìn)制正好相反,將十六進(jìn)制的每一位轉(zhuǎn)換為四位二進(jìn)制數(shù)即可。

數(shù)據(jù)的碼制

在計(jì)算機(jī)中,帶符號(hào)的機(jī)器數(shù)可以采用原碼、反碼、補(bǔ)碼和移碼表示,這些編碼稱(chēng)為碼制。

原碼

在原碼表示中,最高位是符號(hào)位,0表示正號(hào),1表示負(fù)號(hào),其余的n-1位表示數(shù)值的絕對(duì)值,數(shù)值0的原碼有兩種表示形式: = 0 0000000, = 1 0000000。

反碼

在反碼中,最高位是符號(hào)位,0表示正號(hào),1表示負(fù)號(hào),正數(shù)的反碼與原碼相同,負(fù)數(shù)的反碼是其絕對(duì)值按位取反。數(shù)值0的反碼有兩種表示形式: = 0 0000000, = 1 1111111。

補(bǔ)碼

在補(bǔ)碼中,最高位是符號(hào)位,0表示正號(hào),1表示負(fù)號(hào),正數(shù)的補(bǔ)碼與原碼和反碼相同,負(fù)數(shù)的補(bǔ)碼等于其反碼的末位加1。在補(bǔ)碼的表示中,0有唯一的補(bǔ)碼: 補(bǔ) = 0 0000000, 補(bǔ) = 0 0000000。

移碼

移碼表示法是在數(shù)X上增加一個(gè)偏移量來(lái)定義的,常用于表示浮點(diǎn)數(shù)中的階碼。如果機(jī)器字長(zhǎng)為n,規(guī)定偏移量為 2^n-1^。

實(shí)際上,在偏移 2^n-1^的情況下,只要將補(bǔ)碼的符號(hào)位取反就可以獲得相應(yīng)的移碼。

碼制總結(jié)

我們來(lái)看下面的表格,這里,我直接使用八位的二進(jìn)制數(shù)來(lái)表示相應(yīng)的數(shù)值。

碼制 數(shù)值1 數(shù)值-1 1-1
原碼 0000 0001 1000 0001 1000 0010
反碼 0000 0001 1111 1110 1111 1111
補(bǔ)碼 0000 0001 1111 1111 0000 0000
移碼 1000 0001 0111 1111 1000 0000

通過(guò)表格我們發(fā)現(xiàn):

  • 正數(shù)的原碼、反碼和補(bǔ)碼是相同的。
  • 負(fù)數(shù)的反碼是原碼除符號(hào)位外,其他位分別取反;
  • 負(fù)數(shù)的補(bǔ)碼是其反碼的末位加1。
  • 移碼是在補(bǔ)碼的基礎(chǔ)上符號(hào)位取反得到。

在負(fù)數(shù)的原碼和補(bǔ)碼的轉(zhuǎn)換中,我們可以得出如下結(jié)論:

  • 負(fù)數(shù)的原碼轉(zhuǎn)補(bǔ)碼是在原碼的基礎(chǔ)上除符號(hào)位外,其他位取反,然后末位加1。
  • 負(fù)數(shù)的補(bǔ)碼轉(zhuǎn)原碼是在補(bǔ)碼的基礎(chǔ)上除符號(hào)位外,其他位取反,然后末位加1。

也就是說(shuō),負(fù)數(shù)的原碼轉(zhuǎn)補(bǔ)碼和補(bǔ)碼轉(zhuǎn)原碼的規(guī)則是一樣的。小伙伴們可以根據(jù)表格自行驗(yàn)證

計(jì)算機(jī)使用補(bǔ)碼進(jìn)行加減法運(yùn)算

我們?cè)賮?lái)看表格的最后一列 1-1,在計(jì)算機(jī)中,表示為1+(-1),其正確的結(jié)果應(yīng)該為0。接下來(lái),我們分別分析下使用原碼、反碼、補(bǔ)碼和移碼進(jìn)行加減法運(yùn)算的結(jié)果的正確性。

  • 表格的第一行中,使用原碼計(jì)算的結(jié)果為1000 0010,轉(zhuǎn)換為10進(jìn)制數(shù)為-2,1-1不等于-2,所以,使用原碼進(jìn)行加減法運(yùn)算的結(jié)果是錯(cuò)誤的。
  • 在反碼中,計(jì)算1-1的結(jié)果為1111 1111,顯然結(jié)果不為0,所以,使用反碼進(jìn)行加減法運(yùn)算的結(jié)果是錯(cuò)誤的。
  • 在補(bǔ)碼中,計(jì)算1-1的結(jié)果為0000 0000,結(jié)果為0,所以, 使用補(bǔ)碼進(jìn)行加減法運(yùn)算的結(jié)果是正確的。
  • 在移碼中,計(jì)算1-1的結(jié)果為1000 0000,結(jié)果為-0,雖然-0也等于0,但是嚴(yán)格意義來(lái)講,這個(gè)結(jié)果是不正確的。

在計(jì)算機(jī)中,不會(huì)使用移碼進(jìn)行加減法運(yùn)算,移碼用于浮點(diǎn)數(shù)的階碼。


免責(zé)聲明:本文內(nèi)容由21ic獲得授權(quán)后發(fā)布,版權(quán)歸原作者所有,本平臺(tái)僅提供信息存儲(chǔ)服務(wù)。文章僅代表作者個(gè)人觀點(diǎn),不代表本平臺(tái)立場(chǎng),如有問(wèn)題,請(qǐng)聯(lián)系我們,謝謝!

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專(zhuān)欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

LED驅(qū)動(dòng)電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: 驅(qū)動(dòng)電源

在工業(yè)自動(dòng)化蓬勃發(fā)展的當(dāng)下,工業(yè)電機(jī)作為核心動(dòng)力設(shè)備,其驅(qū)動(dòng)電源的性能直接關(guān)系到整個(gè)系統(tǒng)的穩(wěn)定性和可靠性。其中,反電動(dòng)勢(shì)抑制與過(guò)流保護(hù)是驅(qū)動(dòng)電源設(shè)計(jì)中至關(guān)重要的兩個(gè)環(huán)節(jié),集成化方案的設(shè)計(jì)成為提升電機(jī)驅(qū)動(dòng)性能的關(guān)鍵。

關(guān)鍵字: 工業(yè)電機(jī) 驅(qū)動(dòng)電源

LED 驅(qū)動(dòng)電源作為 LED 照明系統(tǒng)的 “心臟”,其穩(wěn)定性直接決定了整個(gè)照明設(shè)備的使用壽命。然而,在實(shí)際應(yīng)用中,LED 驅(qū)動(dòng)電源易損壞的問(wèn)題卻十分常見(jiàn),不僅增加了維護(hù)成本,還影響了用戶(hù)體驗(yàn)。要解決這一問(wèn)題,需從設(shè)計(jì)、生...

關(guān)鍵字: 驅(qū)動(dòng)電源 照明系統(tǒng) 散熱

根據(jù)LED驅(qū)動(dòng)電源的公式,電感內(nèi)電流波動(dòng)大小和電感值成反比,輸出紋波和輸出電容值成反比。所以加大電感值和輸出電容值可以減小紋波。

關(guān)鍵字: LED 設(shè)計(jì) 驅(qū)動(dòng)電源

電動(dòng)汽車(chē)(EV)作為新能源汽車(chē)的重要代表,正逐漸成為全球汽車(chē)產(chǎn)業(yè)的重要發(fā)展方向。電動(dòng)汽車(chē)的核心技術(shù)之一是電機(jī)驅(qū)動(dòng)控制系統(tǒng),而絕緣柵雙極型晶體管(IGBT)作為電機(jī)驅(qū)動(dòng)系統(tǒng)中的關(guān)鍵元件,其性能直接影響到電動(dòng)汽車(chē)的動(dòng)力性能和...

關(guān)鍵字: 電動(dòng)汽車(chē) 新能源 驅(qū)動(dòng)電源

在現(xiàn)代城市建設(shè)中,街道及停車(chē)場(chǎng)照明作為基礎(chǔ)設(shè)施的重要組成部分,其質(zhì)量和效率直接關(guān)系到城市的公共安全、居民生活質(zhì)量和能源利用效率。隨著科技的進(jìn)步,高亮度白光發(fā)光二極管(LED)因其獨(dú)特的優(yōu)勢(shì)逐漸取代傳統(tǒng)光源,成為大功率區(qū)域...

關(guān)鍵字: 發(fā)光二極管 驅(qū)動(dòng)電源 LED

LED通用照明設(shè)計(jì)工程師會(huì)遇到許多挑戰(zhàn),如功率密度、功率因數(shù)校正(PFC)、空間受限和可靠性等。

關(guān)鍵字: LED 驅(qū)動(dòng)電源 功率因數(shù)校正

在LED照明技術(shù)日益普及的今天,LED驅(qū)動(dòng)電源的電磁干擾(EMI)問(wèn)題成為了一個(gè)不可忽視的挑戰(zhàn)。電磁干擾不僅會(huì)影響LED燈具的正常工作,還可能對(duì)周?chē)娮釉O(shè)備造成不利影響,甚至引發(fā)系統(tǒng)故障。因此,采取有效的硬件措施來(lái)解決L...

關(guān)鍵字: LED照明技術(shù) 電磁干擾 驅(qū)動(dòng)電源

開(kāi)關(guān)電源具有效率高的特性,而且開(kāi)關(guān)電源的變壓器體積比串聯(lián)穩(wěn)壓型電源的要小得多,電源電路比較整潔,整機(jī)重量也有所下降,所以,現(xiàn)在的LED驅(qū)動(dòng)電源

關(guān)鍵字: LED 驅(qū)動(dòng)電源 開(kāi)關(guān)電源

LED驅(qū)動(dòng)電源是把電源供應(yīng)轉(zhuǎn)換為特定的電壓電流以驅(qū)動(dòng)LED發(fā)光的電壓轉(zhuǎn)換器,通常情況下:LED驅(qū)動(dòng)電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: LED 隧道燈 驅(qū)動(dòng)電源
關(guān)閉