子程式 取十進位制, 整數型, , 將非十進位制的標準格式文字轉換成十進位制整數值
.引數 欲轉換的值, 文字型, , 欲轉換的值,文字型!
.引數 數值型別, 整數型, 可空, 0,#十六進位制;1,#十進位制(預設);2,#八進位制;3,#二進位制
.區域性變數 s, 整數型, , , 最終結果
.區域性變數 a, 整數型, , , 中間變數
.區域性變數 b, 整數型, , , 中間變數
.區域性變數 c, 文字型, , , 中間變數
.區域性變數 d, 整數型, , , 中間變數
欲轉換的值 = 到小寫 (欲轉換的值)
.如果真 (是否為空 (數值型別))
數值型別 = 1
.如果真結束
s = 0
.判斷開始 (數值型別 = 0)
a = 取文字長度 (欲轉換的值)
.變數迴圈首 (1, a, 1, b)
c = 取文字中間 (欲轉換的值, a - b + 1, 1)
.如果真 (取程式碼 (c, ) ≤ 取程式碼 (“f”, ) 且 取程式碼 (c, ) ≥ 取程式碼 (“a”, ) 或 取程式碼 (c, ) ≤ 取程式碼 (“F”, ) 且 取程式碼 (c, ) ≥ 取程式碼 (“A”, ))
.如果真 (取程式碼 (c, ) ≥ 取程式碼 (“A”, ) 且 取程式碼 (c, ) ≤ 取程式碼 (“F”, ))
d = 取程式碼 (c, ) - 取程式碼 (“A”, ) + 10
.如果真 (取程式碼 (c, ) ≥ 取程式碼 (“a”, ) 且 取程式碼 (c, ) ≤ 取程式碼 (“f”, ))
d = 取程式碼 (c, ) - 取程式碼 (“a”, ) + 10
.如果真 (取程式碼 (c, ) ≤ 取程式碼 (“9”, ) 且 取程式碼 (c, ) ≥ 取程式碼 (“0”, ))
d = 到數值 (c)
s = s + 求次方 (16, b - 1) × d
.變數迴圈尾 ()
.預設
.判斷結束
.判斷開始 (數值型別 = 1)
s = 到數值 (欲轉換的值)
.判斷開始 (數值型別 = 2)
.如果真 (取程式碼 (c, ) ≤ 取程式碼 (“7”, ) 且 取程式碼 (c, ) ≥ 取程式碼 (“0”, ))
s = s + 求次方 (8, b - 1) × d
.判斷開始 (數值型別 = 3)
.如果真 (取程式碼 (c, ) ≤ 取程式碼 (“1”, ) 且 取程式碼 (c, ) ≥ 取程式碼 (“0”, ))
s = s + 求次方 (2, b - 1) × d
返回 (s)
.子程式 十六進位制轉文字, 文字型, , By:淚闖天涯
.引數 欲轉換文字, 文字型
.區域性變數 Bin, 位元組集
.區域性變數 n, 整數型
.區域性變數 i, 整數型
n = 取文字長度 (欲轉換文字) ÷ 2
Bin = 取空白位元組集 (n)
.計次迴圈首 (n, i)
Bin [i] = 取十進位制 (取文字中間 (欲轉換文字, (i - 1) × 2 + 1, 2), 0)
.計次迴圈尾 ()
返回 (到文字 (Bin))
.子程式 轉十六進位制文字, 文字型, , By:淚闖天涯
.區域性變數 str, 文字型
Bin = 到位元組集 (欲轉換文字)
.計次迴圈首 (取位元組集長度 (Bin), i)
str = str + 取文字右邊 (“00” + 取十六進位制文字 (Bin [i]), 2)
返回 (str)
子程式 取十進位制, 整數型, , 將非十進位制的標準格式文字轉換成十進位制整數值
.引數 欲轉換的值, 文字型, , 欲轉換的值,文字型!
.引數 數值型別, 整數型, 可空, 0,#十六進位制;1,#十進位制(預設);2,#八進位制;3,#二進位制
.區域性變數 s, 整數型, , , 最終結果
.區域性變數 a, 整數型, , , 中間變數
.區域性變數 b, 整數型, , , 中間變數
.區域性變數 c, 文字型, , , 中間變數
.區域性變數 d, 整數型, , , 中間變數
欲轉換的值 = 到小寫 (欲轉換的值)
.如果真 (是否為空 (數值型別))
數值型別 = 1
.如果真結束
s = 0
.判斷開始 (數值型別 = 0)
a = 取文字長度 (欲轉換的值)
.變數迴圈首 (1, a, 1, b)
c = 取文字中間 (欲轉換的值, a - b + 1, 1)
.如果真 (取程式碼 (c, ) ≤ 取程式碼 (“f”, ) 且 取程式碼 (c, ) ≥ 取程式碼 (“a”, ) 或 取程式碼 (c, ) ≤ 取程式碼 (“F”, ) 且 取程式碼 (c, ) ≥ 取程式碼 (“A”, ))
.如果真 (取程式碼 (c, ) ≥ 取程式碼 (“A”, ) 且 取程式碼 (c, ) ≤ 取程式碼 (“F”, ))
d = 取程式碼 (c, ) - 取程式碼 (“A”, ) + 10
.如果真結束
.如果真 (取程式碼 (c, ) ≥ 取程式碼 (“a”, ) 且 取程式碼 (c, ) ≤ 取程式碼 (“f”, ))
d = 取程式碼 (c, ) - 取程式碼 (“a”, ) + 10
.如果真結束
.如果真結束
.如果真 (取程式碼 (c, ) ≤ 取程式碼 (“9”, ) 且 取程式碼 (c, ) ≥ 取程式碼 (“0”, ))
d = 到數值 (c)
.如果真結束
s = s + 求次方 (16, b - 1) × d
.變數迴圈尾 ()
.預設
.判斷結束
.判斷開始 (數值型別 = 1)
s = 到數值 (欲轉換的值)
.預設
.判斷結束
.判斷開始 (數值型別 = 2)
a = 取文字長度 (欲轉換的值)
.變數迴圈首 (1, a, 1, b)
c = 取文字中間 (欲轉換的值, a - b + 1, 1)
.如果真 (取程式碼 (c, ) ≤ 取程式碼 (“7”, ) 且 取程式碼 (c, ) ≥ 取程式碼 (“0”, ))
d = 到數值 (c)
.如果真結束
s = s + 求次方 (8, b - 1) × d
.變數迴圈尾 ()
.預設
.判斷結束
.判斷開始 (數值型別 = 3)
a = 取文字長度 (欲轉換的值)
.變數迴圈首 (1, a, 1, b)
c = 取文字中間 (欲轉換的值, a - b + 1, 1)
.如果真 (取程式碼 (c, ) ≤ 取程式碼 (“1”, ) 且 取程式碼 (c, ) ≥ 取程式碼 (“0”, ))
d = 到數值 (c)
.如果真結束
s = s + 求次方 (2, b - 1) × d
.變數迴圈尾 ()
.預設
.判斷結束
返回 (s)
.子程式 十六進位制轉文字, 文字型, , By:淚闖天涯
.引數 欲轉換文字, 文字型
.區域性變數 Bin, 位元組集
.區域性變數 n, 整數型
.區域性變數 i, 整數型
n = 取文字長度 (欲轉換文字) ÷ 2
Bin = 取空白位元組集 (n)
.計次迴圈首 (n, i)
Bin [i] = 取十進位制 (取文字中間 (欲轉換文字, (i - 1) × 2 + 1, 2), 0)
.計次迴圈尾 ()
返回 (到文字 (Bin))
.子程式 轉十六進位制文字, 文字型, , By:淚闖天涯
.引數 欲轉換文字, 文字型
.區域性變數 Bin, 位元組集
.區域性變數 str, 文字型
.區域性變數 i, 整數型
Bin = 到位元組集 (欲轉換文字)
.計次迴圈首 (取位元組集長度 (Bin), i)
str = str + 取文字右邊 (“00” + 取十六進位制文字 (Bin [i]), 2)
.計次迴圈尾 ()
返回 (str)