2014年6月5日 星期四

期末報告

這事有關期末報告的連結

王媽說做完後將連結貼到這裡來

http://minicasts.podomatic.com/play/4928619/7100298


http://www.slideshare.net/murphy831015/ss-35532341

2014年4月24日 星期四

2014年4月6日 星期日

這禮拜教的是一些CPU的概念與一些系統單元,還有相關等硬體,另外還有一些程式語言等


2014年3月22日 星期六

又到了一個禮拜一次的計概時間-.-

這次王媽教的是浮點數與漢明碼

什麼是浮點數呢?

實數是帶有小數點的數字,電腦的浮點數類似自然界的實數,那小數點在哪呢?該如何表示呢?

浮點數總共32位元,第1位元表符號,第2~9共八個位元表偏移指數,第10~32共二十三個位元表有效數。

所謂的偏移指數會指出小數點真正的位置,如從一般數轉浮點數,指數需加127,如從浮點數轉一般數則指數需減127。

所謂有效數是小數點後面的數,而此數需先以科學記號表示法表示之,且小數點前一數必為1。另外,如有效數不足23位元則在其後面補 0 補滿32位元。



再來講漢明碼,ECC錯誤校正碼

 採偶同位元的漢明碼
(a) 4位元原始資料
(b) 4位元原始資料+3位元檢查碼
(c) 假設有一位元發生錯誤
(d) 檢查偶同位元(A錯、B對、C),可以確認網底的資料發生錯誤。


1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
1 2 3 4 5 6 7 8 9 10 11 12
1 2 3 4 5 6 7

紅色部分為同位元組成的檢查碼
黑色部分則為資料碼
兩者交錯合成漢明碼

2014年3月15日 星期六

這禮拜的計概,王媽教了有關於1's補數與2's補數的概念,另外還講了有關於二進位的加減法與乘法。

首先,整數表示法,所謂的整數表示法是指,將數字的第一位表達正負,後面的數字才表達數值的大小,而正負的表示,以0代表正,以1代表負。

Ex:   +21=010101      -21=110101

再來,接著講補數

1的補數(1‘ Complement) :指兩數的和為1,則此兩數互為1 的補數,即1和0互為1的補數。

2的補數(2’ Complement):指二兩數的和使每一位均為0而產生溢位(進位)。

那怎麼求呢?

因為1的補數是兩數互為1,所以只需將1轉成0,0轉成1即可

Ex:原數  010101  則 1's為  101010

而二的補數因為需產生益位,所以將 1's + 1即可得到

Ex:原數  010101  則 1's為  101010  而 2's為  101010 + 1 =101011


二進位的加法很簡單,跟一般的加法無差,而因為電腦沒有減法這種東西,所以會比較複雜一點,以下簡單討論之。

現有兩數 M,N

M-N

1.M>N    (1)求N的2's
                  (2)M+(-N)->如有進位則捨去進位
2.M<N    (1)求N的2's
                  (2)求M+(-N)
                  (3)再一次解出2's,其結果才代表負值


另外,二進位亦有乘法,以下作一系統討論之



Ex:

2014年3月8日 星期六

這禮拜的計概,王媽教了十進位如何轉至二進位,再轉至八進位、十六進位

我們一般生活中所使用的數字都是十進位的,而二進位是電腦,也就是數位的世界所使用的。

所謂的二進位,它只有1跟0兩個數字,一般我們所用的十進位它是由十個數字0~9所建構而成,每當個位數數到9之時,下一數則進位變成10,而二進位也是一樣的道理,當數到1時,因為它只有兩個數字,所以下一數便進位為10,而這裡的10與十進位的10並不相同,二進位的10讀作一零,十進位的10通常讀作十,另外,因為二進位的10是緊接著1的下一個數,所以他相等於十進位的3而不是十進位的10。同理,八進位是由0~7建構而成,十六進位因為數字不夠用,所以它是由0~9,在加上A、B、C、D、E、F建構而成,他們與十進位間的解釋與之相同。

那二進位與十進位該如何互相轉換呢?

十進位的數字能夠寫成科學記號
12345.67810 = 1 x 104 + 2 x 103 + 3 x 102 + 4 x 101 + 5 x 100 + 6 x 10-1 + 7 x 10-2 + 8 x 10-3
同理,二進位也能依此表示之
1101010.11= 1 x 26 + 1 x 25 + 0 x 24 + 1 x 23 + 0 x 22 + 1 x 21 + 0 x 20 + 1 x 2-1 + 1 x 2-2
如此,便能將二進位轉換成十進位

那十進位該如何轉至二進位呢?當要將十進位轉換為二進位之時,只需將小數點前面的數以短除法除以二,再以每次的餘數,由下至上做為二進位小數點前面的數,而小數點後面的數則乘以二直至0為止,然後取每個乘出來的數之個位數,由上至下做為二進位小數點後面的數。

另外,十進位轉八進位,八進位轉十進位,十進位轉十六進位,十六進位轉十進位的轉法亦相同。

那二進位是否可以直接轉成八進位或十六進位呢?答案是肯定的
該如何轉?其實轉法跟轉十進位差不多,只是我們需先將數字以小數點為基點,向左向右每三個化為一墩,不足三則補0,再由這三個數字像轉換為十進位那樣轉成一般數字即是八進位的表示法。二進轉十六亦如此,只是八進是每"三"個化一墩,而十六進是每"四"個化一墩,不足四依然補0即可。



以上即是這禮拜的進度。