匿名使用者
匿名使用者 發問時間: 電腦與網際網路程式設計 · 1 0 年前

請以8bits分別用以下3種表非法來表示整數-60

符號大小表示法~

1的補數表示法~

2的補數表示法~

請將-12和3以二進位來求其四則運算

-12+3~

-12-3~

-12x3~

-12÷3~

請問有人可以回答嗎???

已更新項目:

1.請以8bits分別用以下3種表非法來表示整數-60

符號大小表示法~

1的補數表示法~

2的補數表示法~

2.請將-12和3以二進位來求其四則運算

-12+3~

-12-3~

-12x3~

-12/3~

要結果也要詳細過程 謝謝

2 個解答

評分
  • 1 0 年前
    最佳解答

    不太了解您需要的

    是要-60的三種表示法嗎?

    下面的-12和3以二進位求四則運算?

    是要結果還是過程呢?

    2009-11-25 23:56:50 補充:

    ★1

    十進制-60轉二進制

    符號大小表示法:

    10111100

    1補數表示法:

    11000011

    2補數表示法:

    11000100

    ★2

    小弟不才只會加減法,剩下的可能要交給其他大大了

    符號大小表示法:

    因符號大小表示法的加減法比較麻煩,附上此流程圖

    http://pix.gogobox.com.tw/out.php?i=421167_1.jpg

    十進制-12 = 二進制10001100 →設為A

    十進制3 = 二進制00000011 →設為B

    ☆做-12+3流程

    往圖加的方向做

    S←As XOR Bs

    As為A的正負符號, Bs為B的正負符號

    S←1 XOR 0

    S等於1

    接著往S=1的方向做

    Rm←Am+( 'Bm+1)

    Rm為兩數相加後的大小, Am為A的大小, Bm為B的大小, 則'Bm為B的1補數, 又'Bm+1就為B的2補數

    Rm←0001100+1111101

    Rm等於10001001

    圖中的O代表1位元溢位位置

    我們是用8bits來做運算

    最左邊的一個bit代表正負符號

    做運算的Am和Bm都只有7個bit

    最後相加的Rm卻為8個bit

    也就是多出來的最左邊一個bit就是圖中的O

    做到這裡就知道O為1

    接著往O=1的方向做

    Rs←As

    As為A的正負符號

    所以最後的結果就是Rs為第1個bit

    Rm為後7個bit

    相連就是10001001

    也就等於十進位的-9

    ☆做-12-3流程

    第一步如圖

    Bs←'Bs

    Bs等於1

    第二步

    S←As XOR Bs

    S等於0

    第三步

    Rm←Am+Bm

    Rm等於0001111

    第四步

    Rs←As

    Rs等於1

    Rs和Rm相連為10001111

    也就等於十進位的-15

    二補數表示法:

    ☆做-12+3流程

    十進制-12=二進制1110100

    十進制3=二進制0000011

    做直式加法

     1110100

    +0000011

    ----------------

     1110111

    再對結果做二補數

    答案為二進制0001001=十進制9

    剛剛數字部分較大的是負號

    所以在9前面補負號

    為-9

    ☆做-12-3流程

     1110100

    -0000011

    ----------------

     1110001

    再對結果做二補數

    答案為二進制0001111=十進制15

    剛剛數字部分較大的是負號

    所以在15前面補負號

    為-15

  • 1 0 年前

    1的補數表示法~

    -60 = 11000011

    2的補數表示法~

    -60 = 11000100

    2的補數 1的補數 差別 2個補數 多加一個1

    用 8bit 來做 運算

    如果要 加減乘除 最好使用 2的補數

    12 二進制= 00001100

    二的補數 取 -12 = 11110100

    3二進制 00000011

    第一題

    相加 -12 + 3

    11110100

    +00000011

    --------------------

    11110111

    再用 2的補數 返回去就是答案了

    = 00001001 = 9

還有問題?馬上發問,尋求解答。