將以字串表示的八進位數字(例如 '1735263')轉換成對應的十進位數字,而且要從基本原理著手(也就是說,不行,你不能用內建或外部函式庫來完成轉換)。
實作八進位到十進位的轉換。 給定一個八進位的輸入字串,你的程式應該產生十進位的輸出。
十進位是底數為 10 的系統。
以 10 進位表示的數字 233,可以理解成 10 的次方的線性組合:
所以:
233 # decimal
= 2*10^2 + 3*10^1 + 3*10^0
= 2*100 + 3*10 + 3*1
八進位也類似,只是用的不是 10 的次方,而是 8 的次方。
所以:
233 # octal
= 2*8^2 + 3*8^1 + 3*8^0
= 2*64 + 3*8 + 3*1
= 128 + 24 + 3
= 155
| 暫存器 | 用途 | 型別 | 說明 |
|---|---|---|---|
$a0 |
輸入 | 位址 | 以 null 結尾的八進位字元字串 |
$v0 |
輸出 | 整數 | 輸入字串的十進位數值 |
$t0-9 |
暫時 | 任意 | 用於暫存 |