【單元2】Data Storage (2)|計算機概論|臺大電機工程學系于天立教授

Поділитися
Вставка
  • Опубліковано 6 вер 2024

КОМЕНТАРІ • 47

  • @ycpss91284
    @ycpss91284 8 років тому +70

    2's complement
    其實就是利用 "進位"的概念來達成
    由於在有限bit之下,進位會被捨棄,所以有進沒進其實是一樣的
    之所以會用"補數"的原因
    就是因為所產生的負數是由原本的數字去和"進位的那個底線"去互補
    如果是熟悉的10進位底下算3+8 = 11
    其實可以自動變成 1+10 (因為先把8湊到10,再從另一個地方扣)
    也就是 3+(8-10)+10
    然後因為進位的關係,那個"10" 可以直接捨棄
    就會直接等於 3+(-2) , 這個 "-2" 就從8身上產生了
    回到2進位,3bit之下
    最多只能到 111 (7)為止, 進位會變成 1000 (8)
    所以此時的 8 就和我們十進位的10一樣,是一個底線
    所以拿3+5=8來看 (011+101=1000)
    5和8去補的話,是差3,算式就變成 3+ (5-8)+8 ,再把該進位8拿掉,就剩下0
    也就是 3+(-3) =0
    所以數字的運算並沒有不同,所以就可以直接運算
    但是比大小的時候就會有問題,因為越大的數字所補的數字就會越小,所以大小順序在2's complement負數 時就會整個倒過來

  • @SaySaySee
    @SaySaySee 8 років тому +95

    1.原來聲音是這樣存的
    2.原來midi是這樣存的
    3.原來負數是這樣存的
    4.小數點,還不是很懂
    ?我們怎麼知道OS是用Two's Complement 還是Excess
    *加法電路
    00:20 怎麼儲存聲音
    02:30 05:00 midi怎麼儲存,怎麼播放出聲音
    10:00 負數怎麼存-Two's Complement 15:00 加法運算相同 20:00 sir的作法
    23:30 負數怎麼存-Excess
    24:50 好處可以比大小.缺:加法電路要重新設計 30:00 35:00 40:00 45:00
    42:00 overflow
    46:00 47:00 算出來的數字,表裡找不到,就叫overflow
    48:10 int 4個byte 32bit 如果超過就longlong.如果longlong還不夠,就自己寫.自己加.
    小數怎麼存
    50:06 Fixed-Point ~51:30~53:00 科學記號表示法
    54:40 Floating Point
    57:26 它是這樣被存在記憶體的 = 是用科學記號存進去的
    60:00 它存在記憶體是長這樣 vs 它的科學記號
    65:00 假數是啥咪 67:30 70:00 72:30
    75:00 Normalized Form 80:00

    • @Sophie-ng9rw
      @Sophie-ng9rw 6 років тому +6

      是假數 不是 甲數XD 另外感謝你的整理

    • @denial821124
      @denial821124 5 років тому +3

      謝謝你的整理

    • @SKTTWkartrider
      @SKTTWkartrider 4 роки тому +2

      感謝整理蟲洞

    • @SaySaySee
      @SaySaySee 4 роки тому

      @@Sophie-ng9rw 哈~謝謝你的回饋,原來是假數

    • @MaiJaem
      @MaiJaem 3 роки тому +1

      1:00:00
      1:05:00
      1:15:00

  • @user-bk3zt8sp1dfnodes
    @user-bk3zt8sp1dfnodes 5 місяців тому +2

    計算機概論] 第二講、Data Storage (2)
    0:25 2:59 4:03 4:21 聲音,基本上是用 2種方法
    1 【sample 法( 紀實音樂 )】: 每 間隔 1段時間,取樣1次【能紀錄任何聲音,比較MIDI 法適用 只能記錄特定的聲音-{ 通常是紀錄樂器音 - 樂音 。 }】。2:59
    例如: 200赫茲、振幅( bit resolution): 1600 bps, (bit per seconds)。
    對於聲音或音頻數據的傳輸速率,我們通常使用【"bit per second"(bps)或"kilobits per second"(kbps)來衡量。】這些【單位表示每秒傳輸的音頻數據位元數量。】
    舉例來說,如果一個音頻文件以 128 kbps 的比特率進行編碼,這意味著在每秒內,該音頻文件的數據量為 128,000 bit,這相當於每秒傳輸 128 kbps 的音頻數據。
    在音頻流媒體或音樂串流等應用中,比特率通常用來描述音頻文件的質量和清晰度。一般來說,比特率越高,音頻的質量和清晰度就越高,但同時也會占用更多的數據傳輸帶寬。
    2 【MIDI 法- 記錄樂譜 (SYNTHESIS 合成音樂)】4:21 : 【只能記錄特定的聲音-{ 通常是紀錄樂器音 - 樂音 。 }-- 品質取決於 其他設備上的音效卡】,【來存儲。】 然而,對於MIDI(Musical Instrument Digital Interface)來說,它是一種控制協議,而不是一種傳輸音頻數據的協議。MIDI協議主要用於控制樂器,例如鍵盤、合成器等,以便在這些樂器之間傳遞音樂性質的信息,如音符、音量、音色等。MIDI消息通常包含控制信息,而不是音頻數據本身。
    因此,對於MIDI,我們通常不會使用"bit per second"(bps)來描述傳輸速率,而是使用MIDI消息的數量來描述,比如每秒傳輸多少個MIDI消息或事件。這些消息的數量取決於所傳輸的音樂事件的複雜性和速率,而不是傳輸音頻數據的速率。
    22:52 1補數表示法、2補數表示法、excess 表示法。應該就是,將 數值,全部【向左平移 4單位,假設我們 全部
    轉換到 1條 數線 上來看】。至於用到的數學理論是【數論的 -群、環 理論】。
    1補數、2補數表示法和excess 表示法是三種數字表示方法,通常用於電子計算機中處理帶符號的二進制數字。這些表示法通常用於表示有符號的整數,每種表示法有其自身的特點和應用場景。
    27:44 【組合邏輯電路_加減法器電路】-- 【 XOR gate: 可控制開關】 -- 2補數、excess 表示法。
    30:39 【 解讀計算機編碼 hackmd 】----數論的 -群、環 理論; 【excess: 對稱性 { 1、0 } 。】--> 【 對於 電路 邏輯 容易,但人腦麻煩。 】
    【實現一個阿貝爾群,從而滿足交換律:擁有一個「零」,並確保每個元素都存在一個「反元素」,相加後等於「零」,無論做多少次操作,其結果也必定落於該群之中】。
    31:15 最終進位的 1, 1 被 discard 掉。 43:59 比如說,在c++裡面,pointer 指錯位置 或 new 出 多餘空間,就會出現, cout時,看到
    【非預期結果的】【亂碼】。就是,overflow 了 ?。
    44:03 5 同餘 -3 (mod 8)。 -3 == 8*(-1) +5
    在這個例子裡,因為,我們的 最高位元 1 ,拿來當成
    【符號位元】了,所以,變成3 ~ -4 的表示,而無法
    表示5。一般來說,5 的2進位 表示是 101 (只能表示正數的條件下 )
    。但是,現在
    我們用了 2補數 ,所以, 最高位元 1表示- 號,0 表示 + 號,必須在多
    【1個位元 空間】,變成0000 ~1111,變成 4 bit,才能表示+5。
    45:55 數論的 -群、環 理論; 【excess: 阿貝爾群 - 加法反元素 - 線性代數 : 對稱性 { 1、0 } 。】
    --> 【 對於 電路 邏輯 容易,但人腦麻煩。 】45:44 阿貝爾群 性質、【算術平均數、最小平方法 - 所以 ,在1個阿爾貝群內
    ,大於中間數+小於中間數的整數,1定不會超過 阿爾貝群。】
    1:14:46 754單精度表示法、754倍精度表示法。【 截尾平均數: 【截尾- 誤差值】 】
    1:18:02 【符號位元】【指數位元】【尾數位元】< - > 科學記號的 首數+尾數表示。
    1:20:00 【在這個例子】【我們無法用 8 個 bit 表示 (1/16) 的數值,因為被 0 表示法 占走了。 】
    1:20:00【 正規化 表示法 】。【 Norm?】 。記憶體(主記憶體)和快取(CPU快取)之間有密切的關係,它們都是計算機系統中用於存儲數據的組件,但它們的功能和訪問速度不同,因此在計算機系統的性能和效率方面起著不同的作用。
    主記憶體: 主記憶體是計算機系統中用於存儲程序和數據的主要存儲器。它通常是比較大容量的存儲設備,可用於存儲大量的數據。主記憶體的訪問速度相對較慢,因此它主要用於存儲長期運行的程序和數據,並通常由隨機存取存儲器(RAM)或固態硬盤(SSD)來實現。
    CPU快取: CPU快取是位於中央處理器(CPU)內部的小容量高速存儲器,用於臨時存儲最常用的數據和指令。CPU快取的訪問速度非常快,遠高於主記憶體,因此它可以加速CPU對數據的訪問。CPU快取通常分為多級(L1、L2、L3等)並且大小逐級遞減,L1快取位於CPU內核內部,L2和L3快取位於CPU內核之間或與主記憶體之間。
    36:40 36:45 36:48 。 【 termology】。
    主記憶體和CPU快取之間的關係在於快取的存在可以減少CPU對主記憶體的訪問次數。當CPU需要訪問數據時,它首先查找CPU快取中是否存在所需的數據。如果數據在快取中找到(即命中快取),則CPU可以快速獲取該數據。如果數據不在快取中(即未命中快取),則CPU必須從主記憶體中獲取數據,這將導致額外的訪問延遲。因此,良好的快取管理策略可以減少CPU對主記憶體的訪問次數,從而提高系統的整體性能和效率。

  • @silegowalker
    @silegowalker 5 років тому +18

    21:11 原來網路上會作微積分不會加減的笑話是真的XD

  • @user-bk3zt8sp1dfnodes
    @user-bk3zt8sp1dfnodes 5 місяців тому +1

    計算機概論] 第二講、Data Storage (2) : Series ATA - 硬碟傳輸 的標準 。37:00 36:48 37:30 37:45
    【 投影片 : 藍字部分 是 關鍵字,要記得,和 c++ 一樣。 】
    數論的 -群、環 理論; 【excess: 阿貝爾群 - 加法反元素 - 線性代數 : 對稱性 { 1、0 } 。】
    --> 【 對於 電路 邏輯 容易,但人腦麻煩。 】45:44 阿貝爾群 性質、【算術平均數、最小平方法 - 所以 ,在1個阿爾貝群內
    ,大於中間數+小於中間數的整數,1定不會超過 阿爾貝群。】
    32:31 excess 如何轉換 2進位 轉換 2補數?。33:41 2補數表示的記憶: 【用最高位元0、1來記錄正、負】。其他的值和2進位,一樣。
    33:58 2補數就是定義出,全部都是1 表示 -1 ; 若1補數全部都是1 表示則 -0。因為,全0,要占1個特別的位置,運用【對稱性】。
    35:02 【我們在excess 3 位元表示時,運用【中位數對稱性】,【在2補數表示的條件下】全部,向左或向下,平移4單位。
    35:10 excess 因為是【平移到最中間的數】,所以【維持了左右的大小關係】。【好處: 電路不用重新設計,所以,
    直接看和2補數 之間的關係,用 【馬可夫鏈-轉移矩陣】 的概念來理解看看,excess 的數值和2 補數 的【數值配對關係】。】。。
    【8個格子,放8種數值,0放哪1格子呢?】38:48 【x+(-y) 的例子。】40:20 【3位元 8進位、excess 向下、函數向左平移4,要加回來。 】
    【2種 數值系統: 2補數和excess;41:40 】。。。【41:59 overflow 溢位問題。】【43:49 數論 同餘理論 ;溢位 被丟棄,丟到 進位器 裡面存起來 ? 莫比烏斯環? 】 【 51:01 fixed_point 】。【 52:52 3*10^8(m/s) (M、K、S 制;和 因次 有關。) 】【53:36 表示法: 資料壓縮。避免空間占用龐大;也是使用 pointer 的原因 。】【 54:45 floating point: 】。。。【1:04:53 IEEE 64位元 單/倍精度 表示法。
    浮點數IEEE 754 Float表示法 筆算 1:18:30 】【IEEE754 1:18:53 把 0 記錄起來的 例外 ,犧牲的是 在同樣位元數下,可以表示的【最小值】 】,因為最可以被忽略。】【 全 0 在EXCESS notation 中,是 最 ? 的那個值。1:19:00】。。。。。

  • @HMJ2001
    @HMJ2001 2 роки тому +8

    老師救了我的計概期中考

  • @AnAn-qd4ui
    @AnAn-qd4ui Місяць тому

    1:06:16
    最小最大是要看2進制指數部分幾個bit嗎?
    依照老師sign(1bit) exponent(3bit) mantisse(4bit) 的邏輯從尾數四位元的小數點左右移動判斷?
    所以"最小"從第四個位的小數點往右移四位?
    "最大"是從第四位元的小數點往左移三位?
    這樣子對嗎?

    • @n0O0oO0o-e2mmo
      @n0O0oO0o-e2mmo 9 днів тому +1

      應該是中學階段,
      科學記號的進階版。
      指數對數的應用:
      -- 首數+尾數。

  • @gunsnroses962
    @gunsnroses962 Рік тому +2

    我也没有看懂excess 表示法

  • @Yvess01480
    @Yvess01480 4 роки тому +2

    我想請問 老師說「必須要把它變成5位數」的概念是因為:在floating裡面的mantissa是 0

  • @kobayasifrank9345
    @kobayasifrank9345 4 роки тому +3

    (-1)^sign * 1.mantissa * 2^exponent

    • @kobayasifrank9345
      @kobayasifrank9345 4 роки тому +1

      IEEE 754 Double Floating (64 bits) :
      var x=1/2**1024
      console.log(x)
      .... 0

  • @ts01121482
    @ts01121482 10 років тому

    所以一般是算normalized form?

  • @harry01789
    @harry01789 2 роки тому +3

    43:50 為什麼 5 同餘 -3 (mod 8) 呢?

    • @shortylin4314
      @shortylin4314 2 роки тому +5

      -3 = 8 * (-1) + 5,餘數5

    • @shortylin4314
      @shortylin4314 2 роки тому +8

      2022年還有同學一起看覺得開心XD 如果可以的話真希望台大可以放比較近期的

    • @harry01789
      @harry01789 Рік тому

      @@shortylin4314 對呀 :)

    • @harry01789
      @harry01789 Рік тому

      @@shortylin4314 謝謝 :)

  • @xiaomingsjourneyz7586
    @xiaomingsjourneyz7586 4 роки тому +1

    请问用的是哪本教材?

    • @user-sg9yj5dh9w
      @user-sg9yj5dh9w 3 роки тому +2

      自編講義,在這門課的官網可以下載

  • @TheZxc1914161
    @TheZxc1914161 4 роки тому

    33:03

  • @GoodEnough030
    @GoodEnough030 4 роки тому

    請問一下101 為什麼是正1

    • @GoodEnough030
      @GoodEnough030 4 роки тому

      63:00

    • @GoodEnough030
      @GoodEnough030 4 роки тому

      喔喔 2~4bit指的是指數的大小
      指數也是有正負我忘了

  • @yu.h.c2051
    @yu.h.c2051 8 років тому

    1:09:41

  • @user-ct9ng4vl9y
    @user-ct9ng4vl9y 10 років тому

    不知道有人有第12讲的影片吗?

    • @alili9175
      @alili9175 5 років тому +1

      ua-cam.com/video/-j2n0MSOb3c/v-deo.html

    • @alili9175
      @alili9175 5 років тому +3

      都整理在這喔
      ocw.aca.ntu.edu.tw/ntu-ocw/index.php/ocw/cou/101S210/12

    • @user-bk3zt8sp1dfnodes
      @user-bk3zt8sp1dfnodes 5 місяців тому

      謝謝。 @@alili9175

  • @dengfixanros
    @dengfixanros 7 років тому

    1:14:40
    .1010 不就是 5/8嗎? 為何是 1/2?
    哦了 0(110)(1010)的值是 5/8 x 2^2

  • @user-xn9ow1iu2x
    @user-xn9ow1iu2x Рік тому

    愛心老士
    同學要乖一點

  • @asyourwish
    @asyourwish 5 років тому

    19:00 1 0 1 ?

    • @uudd1133
      @uudd1133 3 роки тому +1

      笑死 完美詮釋睜眼說瞎話

  • @SKTTWkartrider
    @SKTTWkartrider 4 роки тому

    踢痞口ㄌㄧ˙

  • @user-ww3oh3kf5p
    @user-ww3oh3kf5p 3 роки тому

    说话中英结合听得真难受

    • @oneworldofstem7724
      @oneworldofstem7724 3 роки тому +16

      聽唔明?你不如讀多d書先

    • @user-nf8zo8xq3e
      @user-nf8zo8xq3e 2 роки тому +6

      我聽得真順,你要多讀點書

    • @user-pn1yc2ry9e
      @user-pn1yc2ry9e 2 роки тому +10

      理工科都這樣
      不管學校或業界
      不喜歡就別讀了

    • @micasa1199
      @micasa1199 Рік тому +4

      那是你自己的問題

    • @shc8168
      @shc8168 8 місяців тому +1

      計算機領域的名詞都是英文,在中文的翻譯都會有不同,最佳的方式就是中文加原名才不會有誤會
      比如memory RAM 繁中:記憶體 簡中:內存 台灣記者:容量