alibaba 研發 演算法筆試題1

2021-06-26 00:04:55 字數 2623 閱讀 3191

1、-7的二進位制補碼表示為(d)。

a、0111 1000

b、0111 1001

c、1111 1000

d、1111 1001

答:數電題。

解析:-7的原碼是1 000 0111,反碼是1 111 1000,補碼是1 111 1001,故選d

知識補充:

(1)、乙個數在計算機中的二進位制表示形式,叫做這個數的機器數。機器數是帶符號的,在計算機用乙個數的最高位存放符號,正數為0,負數為1。比如,十進位制中的數+3,計算機字長為8位,轉換成二進位制就是00000011。如果是-3,就是10000011 。那麼,這裡的 00000011 和10000011 就是機器數。因為第一位是符號位,所以機器數的形式值就不等於真正的數值,所以,為區別起見,將帶符號位的機器數對應的真正數值稱為機器數的真值。例如:00000001的真值=+0000001=+1,1000 0001的真值=–0000001= –1。

(2)、原碼就是符號位加上真值的絕對值,即用第一位表示符號,其餘位表示值。比如如果是8位二進位制:+1=00000001(原碼),-1=10000001(原碼)。第一位是符號位,因為第一位是符號位,所以8位二進位制數的取值範圍就是:11111111~0111 1111,即(-127 , 127)。原碼是人腦最容易理解和計算的表示方式。

(3)、反碼的表示方法是:正數的反碼是其本身,負數的反碼是在其原碼的基礎上,符號位不變,其餘各個位取反。例如:+1=00000001(原碼)=00000001(反碼),-1=10000001(原碼)=11111110(反碼)。可見如果乙個反碼表示的是負數,人腦無法直觀的看出來它的數值,通常要將其轉換成原碼再計算。

(4)、補碼的表示方法是:正數的補碼就是其本身,負數的補碼是在其原碼的基礎上,符號位不變,其餘各位取反,最後+1(即在反碼的基礎上+1)。例如:+1=00000001(原碼)=00000001(反碼)=00000001(補碼),-1=10000001(原碼)=11111110(反碼)=11111111(補碼)。對於負數,補碼表示方式也是人腦無法直**出其數值的,通常也需要轉換成原碼在計算其數值。

(5)、知識擴充套件(為何要使用原碼、反碼和補碼):因為人腦可以知道第一位是符號位,在計算的時候我們會根據符號位,選擇對真值區域的加減。但是對於計算機,加減乘數已經是最基礎的運算, 要設計的盡量簡單,計算機辨別『符號位』顯然會讓計算機的基礎電路設計變得十分複雜!於是人們想出了將符號位也參與運算的方法。我們知道,根據運算法則,減法相當於加上乙個負數,所以機器可以只有加法而沒有減法,這樣計算機的運算設計就會更簡單了。於是人們開始探索將符號位參與運算,並且只保留加法的方法。為了解決原碼做減法的問題,出現了反碼。發現用反碼計算減法,結果的真值部分是正確的。而唯一的問題其實就出現在"0"這個特殊的數值上,雖然人們理解上+0和-0是一樣的,但是0帶符號是沒有任何意義的。而且會有00000000(原)和10000000(原)兩個編碼表示0。於是補碼的出現很好的解決了0的符號問題以及兩個編碼的問題。

(6)、知識擴充套件(原碼、反碼、補碼再深入):

mod是取模操作,例如16 mod 12=4。同餘:兩個整數a,b,若它們除以整數m所得的餘數相等,則稱a,b對於模m同餘。記作 a ≡ b (mod m),讀作 a 與 b 關於模 m 同餘。舉例說明:4 mod 12 = 4,16 mod 12 = 4,28 mod 12 = 4,所以4, 16, 28關於模 12 同餘。負數取模:(-2) mod 12 = 10等價於10 mod 12 = 10,所以-2與10是同餘的。同理,(-4) mod 12 = 8,8 mod 12 = 8,所以-4與8是同餘的。

2、以下四種介質中,頻寬最大的是(c)。

a、同軸電纜(coaxial)

b、雙絞線(twisted-pair)

c、光纖(optical-pair)

d、同步線(synchronous)

答:通訊常識題。

解析:同軸電纜頻寬最大可達1ghz,雙絞線頻寬最大可達約600mhz左右,光纖頻寬最大可達30000ghz,同步線做同步用,頻寬最低。選c

知識補充:

同軸電纜

雙絞線(twisted pair)是由一對或者一對以上的相互絕緣的導線按照一定的規格互相纏繞(一般以逆時針纏繞)在一起而製成的一種傳輸介質,屬於資訊通訊網路傳輸介質。雙絞線過去主要是用來傳輸模擬訊號的,但現在同樣適用於數碼訊號的傳輸。是一種常用的佈線材料。七類線(cat7):傳輸頻率為600mhz,傳輸速度為10gbps,單線標準外徑8mm,多芯線標準外徑6mm,可能用於今後的10g位元乙太網。

光纖是光導纖維的簡寫,是一種由玻璃或塑料製成的纖維,可作為光傳導工具。傳輸原理是『光的全反射』。前香港中文大學校長高錕和george a. hockham首先提出光纖可以用於通訊傳輸的設想,高錕因此獲得2023年諾貝爾物理學獎。儘管由於光纖對不同頻率的光有不同的損耗,使頻頻寬度受到影響,但在最低損耗區的頻頻寬度也可達30000ghz。

Alibaba 阿里巴巴2014筆試題

前天筆試的阿里巴巴,有一道填空題是問如何只掃瞄一次陣列,求出其方差。考試的時候知道肯定可以求出來,而且要用迭代 即遞推 可惜當時由於時間緊張,推導的公式寫錯了。在此補上。公式使用latex寫的。所以只能截圖了。最後給出了c函式。題目二 不開闢變數,僅用3條語句交換兩個變數int a,int b 答案...

研發類C 筆試題目

1 vector和list的區別 區別 1 vector的物件實在一塊連續的記憶體空間上,而list的物件可以不在來連續的記憶體空間上。2 vector元素的隨機訪問的效率很高,插入和刪除效率較低,當vector儲存的物件的構造較為複雜時,移動vector的元素需要呼叫物件的拷貝建構函式,效率因而很...

演算法筆試題

一 不引入新變數交換兩個變數的值 1 通過加法 不好的地方在於如果a值足夠大,以至於加乙個數就溢位,比如int型在常見的32位或64位機器佔4個位元組,則最大的有符號整數是2 31 1,最小的是 2 31 c 版本 include using namespace std intmain python...