2011年4月15日 星期五

Excel-各種進制的運算

在 Excel 的工作表中,如果想要輸入一個二進制數、八進制數或十六進制數,然後要產生遞增1的數列(參考下)該如何處理呢?

必須要使用進制轉換的函數:DEC2BIN、BIN2DEC、DEC2OCT、OCT2DEC、DEC2HEX、HEX2DEC。

儲存格B3:=DEC2BIN(BIN2DEC($B$2)+ROW(1:1))

因為要進行加1的運算所以得先把二進制轉成十進制,加1後,再轉回二進制顯示。

八進制和十六進制的加1運算也一樣:

儲存格C3:=DEC2OCT(OCT2DEC($C$2)+ROW(1:1))

儲存格D3:.=DEC2HEX(HEX2DEC($D$2)+ROW(1:1))

複制儲存格B3:D3,然後往下貼上即可完成。

如果要將二進制數、八進制數或十六進制數做「加法運算」,參考以下做法:

儲存格I2:=DEC2BIN(BIN2DEC(G2)+BIN2DEC(H2))

儲存格I3:=DEC2OCT(OCT2DEC(G3)+OCT2DEC(H3))

儲存格I4:=DEC2HEX(HEX2DEC(G4)+HEX2DEC(H4),8)

上個公式的參數8,表示要以8位元顯示,所以前面有補0的情形。

如果要將二進制數、八進制數或十六進制數做「減法運算」,參考以下做法:

儲存格I7:=DEC2BIN(BIN2DEC(G7)-BIN2DEC(H7),5)

儲存格I8:=DEC2BIN(BIN2DEC(G8)-BIN2DEC(H8))

因為這個運算的結果是負數,所以會以2的補數來表示。

以下八進制數和十六進制數的減法運算,原理相同:

儲存格I9:=DEC2OCT(OCT2DEC(G9)-OCT2DEC(H9),4)

儲存格I10:=DEC2OCT(OCT2DEC(G10)-OCT2DEC(H10))

儲存格I11:=DEC2HEX(HEX2DEC(G11)-HEX2DEC(H11),4)

儲存格I12:=DEC2HEX(HEX2DEC(G12)-HEX2DEC(H12))

沒有留言:

張貼留言

檢視其他文章

好康東東