久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

計(jì)算機(jī)內(nèi)部的數(shù)據(jù)表達(dá)怎么理解

共計(jì) 3543 個(gè)字符,預(yù)計(jì)需要花費(fèi) 9 分鐘才能閱讀完成。

這篇文章主要介紹“計(jì)算機(jī)內(nèi)部的數(shù)據(jù)表達(dá)怎么理解”,在日常操作中,相信很多人在計(jì)算機(jī)內(nèi)部的數(shù)據(jù)表達(dá)怎么理解問題上存在疑惑,丸趣 TV 小編查閱了各式資料,整理出簡(jiǎn)單好用的操作方法,希望對(duì)大家解答”計(jì)算機(jī)內(nèi)部的數(shù)據(jù)表達(dá)怎么理解”的疑惑有所幫助!接下來,請(qǐng)跟著丸趣 TV 小編一起來學(xué)習(xí)吧!

1.3 計(jì)算機(jī)內(nèi)部的數(shù)據(jù)表達(dá)

    計(jì)算機(jī)內(nèi)部數(shù)據(jù)表達(dá)的總原則就是:把一切內(nèi)容數(shù)值化、數(shù)字化。這個(gè)也是編程時(shí)處理數(shù)據(jù)的基本方式,對(duì)于編程理解的越深入,則將越認(rèn)同該原則。

    其實(shí)計(jì)算機(jī)也只能這樣,因?yàn)橛?jì)算機(jī)內(nèi)部只能存儲(chǔ) 0 和 1 兩個(gè)數(shù)字,所以必須把指令、數(shù)據(jù)、圖片、文本等各種各樣的內(nèi)容數(shù)字化成 0 和 1 進(jìn)行存儲(chǔ)、傳輸和顯示。

    1.3.1 整數(shù)的表達(dá)

    整數(shù)有正負(fù)之分,但是計(jì)算機(jī)內(nèi)部只能存儲(chǔ) 0 和 1,則計(jì)算機(jī)內(nèi)部將符號(hào)數(shù)字化,用二進(jìn)制碼的最高位代表符號(hào)位,規(guī)定該位為 0 代表正,1 代表負(fù)。這就是符號(hào)數(shù)字化的規(guī)定。

    前面介紹過整數(shù)在計(jì)算機(jī)內(nèi)部都是以二進(jìn)制的形式保存的。但是為了計(jì)算方便,以及簡(jiǎn)化 CPU 的結(jié)構(gòu),所以在存儲(chǔ)和運(yùn)算時(shí)都采用補(bǔ)碼的形式。

    前面介紹的那些直接計(jì)算出來的二進(jìn)制形式,都稱作整數(shù)的原碼。規(guī)定正數(shù)的原碼、反碼和補(bǔ)碼都是自身。

    而對(duì)于負(fù)數(shù),仔細(xì)研究一下其組成格式。以 8 位機(jī)為例,也就是一個(gè)數(shù)字占計(jì)算機(jī)中的 8 位,也就是一個(gè)字節(jié),用最高位存儲(chǔ)符號(hào)位,其它的位存儲(chǔ)數(shù)值。例如 - 8 的原碼是 10001000,最高位的 1 代表負(fù)數(shù),后續(xù)的 7 位代表數(shù)值。

    負(fù)數(shù)的反碼是指符號(hào)位不變,其他的位取反,也就是 0 變 1,1 變 0,則 - 8 的反碼是 11110111. 負(fù)數(shù)的補(bǔ)碼是指在反碼的數(shù)值位上加 1,運(yùn)算后得到的結(jié)果,只計(jì)算數(shù)值位,不改變符號(hào)位。則 - 8 的補(bǔ)碼是 11111000,該次運(yùn)算中,低位向高位進(jìn)行了進(jìn)位。

    規(guī)律:補(bǔ)碼的補(bǔ)碼等于負(fù)數(shù)的原碼。

    也就是對(duì)負(fù)數(shù)的補(bǔ)碼再求補(bǔ),則得到的負(fù)數(shù)的原碼。

    熟悉整數(shù)的表達(dá),對(duì)于后續(xù)理解數(shù)據(jù)的區(qū)間以及進(jìn)行強(qiáng)制轉(zhuǎn)換以后得到的數(shù)值很有幫助,也是進(jìn)行位運(yùn)算的基礎(chǔ)。

    備注:小數(shù),編程語(yǔ)言中稱浮點(diǎn)數(shù),的存儲(chǔ)形式和整數(shù)不同。

    1.3.2 字符的表達(dá)

    字符指計(jì)算機(jī)內(nèi)部單個(gè)的符號(hào),如標(biāo)點(diǎn)符號(hào)、英文字母和漢字等等。因?yàn)檫@些字符種類各異,計(jì)算機(jī)無(wú)法直接表達(dá),那么就采用了計(jì)算機(jī)編程中也常用的方式,對(duì)每個(gè)字符進(jìn)行編號(hào),例如規(guī)定 a 字符編號(hào)為 97,b 字符編號(hào)為 98 等等。

    由于需要編號(hào)的字符很多,就專門規(guī)定了一系列字符和編號(hào)的對(duì)應(yīng)規(guī)則,那么這些對(duì)應(yīng)表就被稱作字符集,常見的字符集有 ASCII、GB2312、BIG5 等。

    在計(jì)算機(jī)內(nèi)部存儲(chǔ)、運(yùn)算和傳輸時(shí),都只需要使用該編號(hào)即可。

    字符集比較完美的解決了字符的存儲(chǔ)和傳輸?shù)膯栴}。

    所以字符在程序內(nèi)部可以參與運(yùn)算,其實(shí)參與運(yùn)算的就是這個(gè)字符的編號(hào),字符集規(guī)律是很多字符變換邏輯實(shí)現(xiàn)的基礎(chǔ)。

    備注:字符的顯示則通過專門的字符顯示碼實(shí)現(xiàn)。

    1.3.3 總結(jié)

    其實(shí)計(jì)算機(jī)內(nèi)部所有的東西都是以數(shù)字的形式存儲(chǔ)的,這里只是希望通過這兩種簡(jiǎn)單的結(jié)構(gòu),使大家了解將數(shù)據(jù)數(shù)字化的思想,這是編程時(shí)常用的思想之一。

Java 編程那些事兒——網(wǎng)絡(luò)編程基礎(chǔ)

Java, JDK, Java 編譯器, Javac, Java 基礎(chǔ)

對(duì)于初學(xué)者,或者沒有接觸過網(wǎng)絡(luò)編程的程序員,會(huì)覺得網(wǎng)絡(luò)編程涉及的知識(shí)很高深,很難,其實(shí)這是一種誤解,當(dāng)你的語(yǔ)法熟悉以后,其實(shí)基本的網(wǎng)絡(luò)編程現(xiàn)在已經(jīng)被實(shí)現(xiàn)的異常簡(jiǎn)單了。

    1.4.1 網(wǎng)絡(luò)編程是什么?

    網(wǎng)絡(luò)編程的本質(zhì)是兩個(gè)設(shè)備之間的數(shù)據(jù)交換,當(dāng)然,在計(jì)算機(jī)網(wǎng)絡(luò)中,設(shè)備主要指計(jì)算機(jī)。數(shù)據(jù)傳遞本身沒有多大的難度,不就是把一個(gè)設(shè)備中的數(shù)據(jù)發(fā)送給兩外一個(gè)設(shè)備,然后接受另外一個(gè)設(shè)備反饋的數(shù)據(jù)。

    現(xiàn)在的網(wǎng)絡(luò)編程基本上都是基于請(qǐng)求 / 響應(yīng)方式的,也就是一個(gè)設(shè)備發(fā)送請(qǐng)求數(shù)據(jù)給另外一個(gè),然后接收另一個(gè)設(shè)備的反饋。

    在網(wǎng)絡(luò)編程中,發(fā)起連接程序,也就是發(fā)送第一次請(qǐng)求的程序,被稱作客戶端(Client),等待其他程序連接的程序被稱作服務(wù)器(Server)??蛻舳顺绦蚩梢栽谛枰臅r(shí)候啟動(dòng),而服務(wù)器為了能夠時(shí)刻相應(yīng)連接,則需要一直啟動(dòng)。例如以打電話為例,首先撥號(hào)的人類似于客戶端,接聽電話的人必須保持電話暢通類似于服務(wù)器。

    連接一旦建立以后,就客戶端和服務(wù)器端就可以進(jìn)行數(shù)據(jù)傳遞了,而且兩者的身份是等價(jià)的。

    在一些程序中,程序既有客戶端功能也有服務(wù)器端功能,最常見的軟件就是 BT、emule 這類軟件了。

    下面來談一下如何建立連接以及如何發(fā)送數(shù)據(jù)。

    1.4.2 IP 地址和域名

    在現(xiàn)實(shí)生活中,如果要打電話則需要知道對(duì)應(yīng)人的電話號(hào)碼,如果要寄信則需要知道收信人的地址。在網(wǎng)絡(luò)中也是這樣,需要知道一個(gè)設(shè)備的位置,則需要使用該設(shè)備的 IP 地址,具體的連接過程由硬件實(shí)現(xiàn),程序員不需要過多的關(guān)心。

    IP 地址是一個(gè)規(guī)定,現(xiàn)在使用的是 IPv4,既由 4 個(gè) 0 -255 之間的數(shù)字組成,在計(jì)算機(jī)內(nèi)部存儲(chǔ)時(shí)只需要 4 個(gè)字節(jié)即可。在計(jì)算機(jī)中,IP 地址是分配給網(wǎng)卡的,每個(gè)網(wǎng)卡有一個(gè)唯一的 IP 地址,如果一個(gè)計(jì)算機(jī)有多個(gè)網(wǎng)卡,則該臺(tái)計(jì)算機(jī)則擁有多個(gè)不同的 IP 地址,在同一個(gè)網(wǎng)絡(luò)內(nèi)部,IP 地址不能相同。IP 地址的概念類似于電話號(hào)碼、身份證這樣的概念。

    由于 IP 地址不方便記憶,所以有專門創(chuàng)造了域名(Domain Name)的概念,其實(shí)就是給 IP 取一個(gè)字符的名字,例如 163.com、sina.com 等。IP 和域名之間存在一定的對(duì)應(yīng)關(guān)系。如果把 IP 地址類比成身份證號(hào)的話,那么域名就是你的姓名。

    其實(shí)在網(wǎng)絡(luò)中只能使用 IP 地址進(jìn)行數(shù)據(jù)傳輸,所以在傳輸以前,需要把域名轉(zhuǎn)換為 IP,這個(gè)由稱作 DNS 的服務(wù)器專門來完成。

    所以在網(wǎng)絡(luò)編程中,可以使用 IP 或域名來標(biāo)識(shí)網(wǎng)絡(luò)上的一臺(tái)設(shè)備。

    1.4.3 端口的概念

    為了在一臺(tái)設(shè)備上可以運(yùn)行多個(gè)程序,人為的設(shè)計(jì)了端口(Port)的概念,類似的例子是公司內(nèi)部的分機(jī)號(hào)碼。

    規(guī)定一個(gè)設(shè)備有 216 個(gè),也就是 65536 個(gè)端口,每個(gè)端口對(duì)應(yīng)一個(gè)唯一的程序。每個(gè)網(wǎng)絡(luò)程序,無(wú)論是客戶端還是服務(wù)器端,都對(duì)應(yīng)一個(gè)或多個(gè)特定的端口號(hào)。由于 0 -1024 之間多被操作系統(tǒng)占用,所以實(shí)際編程時(shí)一般采用 1024 以后的端口號(hào)。

    使用端口號(hào),可以找到一臺(tái)設(shè)備上唯一的一個(gè)程序。

    所以如果需要和某臺(tái)計(jì)算機(jī)建立連接的話,只需要知道 IP 地址或域名即可,但是如果想和該臺(tái)計(jì)算機(jī)上的某個(gè)程序交換數(shù)據(jù)的話,還必須知道該程序使用的端口號(hào)。

    1.4.4 數(shù)據(jù)傳輸方式

    知道了如何建立連接,下面就是如何傳輸數(shù)據(jù)了,先來看一下數(shù)據(jù)傳輸?shù)姆绞健?/p>

    在網(wǎng)絡(luò)上,不管是有線傳輸還是無(wú)線傳輸,數(shù)據(jù)傳輸?shù)姆绞接袃煞N:

   !——[if!supportLists]—— l!——[endif]—— TCP(Transfer Control Protocol)

    傳輸控制協(xié)議方式,該傳輸方式是一種穩(wěn)定可靠的傳送方式,類似于顯示中的打電話。只需要建立一次連接,就可以多次傳輸數(shù)據(jù)。就像電話只需要撥一次號(hào),就可以實(shí)現(xiàn)一直通話一樣,如果你說的話不清楚,對(duì)方會(huì)要求你重復(fù),保證傳輸?shù)臄?shù)據(jù)可靠。

    使用該種方式的優(yōu)點(diǎn)是穩(wěn)定可靠,缺點(diǎn)是建立連接和維持連接的代價(jià)高,傳輸速度不快。

   !——[if!supportLists]—— l!——[endif]—— UDP(User Datagram Protocol)

    用戶數(shù)據(jù)報(bào)協(xié)議方式,該傳輸方式不建立穩(wěn)定的連接,類似于發(fā)短信息。每次發(fā)送數(shù)據(jù)都直接發(fā)送。發(fā)送多條短信,就需要多次輸入對(duì)方的號(hào)碼。該傳輸方式不可靠,數(shù)據(jù)有可能收不到,系統(tǒng)只保證盡力發(fā)送。

    使用該種方式的優(yōu)點(diǎn)是開銷小,傳輸速度快,缺點(diǎn)是數(shù)據(jù)有可能會(huì)丟失。

    在實(shí)際的網(wǎng)絡(luò)編程中,大家可以根據(jù)需要選擇任何一種傳輸方式,或組合使用這兩種方式實(shí)現(xiàn)數(shù)據(jù)的傳遞。

    1.4.5 協(xié)議的概念

    協(xié)議(Protocol)是網(wǎng)絡(luò)編程中一個(gè)非常重要的概念,指的是傳輸數(shù)據(jù)的格式。因?yàn)榇蠹以诰W(wǎng)絡(luò)中需要傳輸各種各樣的信息,在程序中獲得到的都是一組數(shù)值,如何閱讀這些數(shù)值呢,就需要提前規(guī)定好這組數(shù)據(jù)的格式,在客戶端按照該格式生成發(fā)送數(shù)據(jù),服務(wù)器端按照該格式閱讀該數(shù)據(jù),然后在按照一定的格式生成數(shù)據(jù)反饋給客戶端,客戶端再按照該格式閱讀數(shù)據(jù)。現(xiàn)實(shí)中類似的例子就是電報(bào)編碼,每個(gè)數(shù)字都是用特定的數(shù)據(jù)表達(dá)。

    一般程序的協(xié)議都分成客戶端發(fā)送的數(shù)據(jù)格式,以及服務(wù)器端反饋的數(shù)據(jù)格式,客戶端和服務(wù)器端都遵循該格式生成或處理數(shù)據(jù),實(shí)現(xiàn)兩者之間的復(fù)雜數(shù)據(jù)交換。

到此,關(guān)于“計(jì)算機(jī)內(nèi)部的數(shù)據(jù)表達(dá)怎么理解”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識(shí),請(qǐng)繼續(xù)關(guān)注丸趣 TV 網(wǎng)站,丸趣 TV 小編會(huì)繼續(xù)努力為大家?guī)砀鄬?shí)用的文章!

正文完
 
丸趣
版權(quán)聲明:本站原創(chuàng)文章,由 丸趣 2023-08-16發(fā)表,共計(jì)3543字。
轉(zhuǎn)載說明:除特殊說明外本站除技術(shù)相關(guān)以外文章皆由網(wǎng)絡(luò)搜集發(fā)布,轉(zhuǎn)載請(qǐng)注明出處。
評(píng)論(沒有評(píng)論)
主站蜘蛛池模板: 北辰区| 松溪县| 浪卡子县| 陕西省| 英超| 武冈市| 咸宁市| 合肥市| 张家川| 乳源| 南岸区| 六安市| 剑河县| 上林县| 柳林县| 广饶县| 香河县| 南昌县| 石门县| 称多县| 连南| 津南区| 沙雅县| 华池县| 河津市| 屯留县| 徐汇区| 天镇县| 邯郸市| 晋州市| 万宁市| 汉寿县| 庆元县| 奇台县| 汕尾市| 和龙市| 广东省| 大名县| 即墨市| 平顺县| 昌都县|