16進数を2進数に変換します。2進数を16進数に変換するにはbinToHex (自作関数)を使います。
- 構文
- UString = hexToBin( hex )
- 引数
- hex必須
- 16進数
- 戻り値
- 2進数に変換した値
プログラム
//////////////////////////////////////////////////
// 【引数】
// hex : 16進数
// 【戻値】
// 2進数に変換した値
//////////////////////////////////////////////////
FUNCTION hexToBin(hex)
HASHTBL hb
hb["0"] = "0000"; hb["1"] = "0001"; hb["2"] = "0010"; hb["3"] = "0011";
hb["4"] = "0100"; hb["5"] = "0101"; hb["6"] = "0110"; hb["7"] = "0111";
hb["8"] = "1000"; hb["9"] = "1001"; hb["A"] = "1010"; hb["B"] = "1011";
hb["C"] = "1100"; hb["D"] = "1101"; hb["E"] = "1110"; hb["F"] = "1111";
DIM bin = ""
IFB POS(".", hex) <> 0 THEN
FOR i = 1 TO LENGTH(hex)
DIM str = COPY(hex, i, 1)
IF str = "." THEN bin = bin + "."
bin = bin + hb[str]
NEXT
ELSE
FOR i = 1 TO LENGTH(hex)
bin = bin + hb[COPY(hex, i, 1)]
NEXT
ENDIF
RESULT = bin
FEND
例
DIM array[] = "F", "FF", "CCBA", "73.AD", "FF.184", "A1E.1", "F77.42", "CD21.74"
FOR item IN array
PRINT item + "," + hexToBin(item)
NEXT
- 結果
F, 1111 FF, 11111111 CCBA, 1100110010111010 73.AD, 01110011.10101101 FF.184, 11111111.000110000100 A1E.1, 101000011110.0001 F77.42, 111101110111.01000010 CD21.74, 1100110100100001.01110100
関連記事
- binToHex (自作関数)
- 2進数を16進数に変換します。負数・小数の値にも対応しています。
- binToDec (自作関数)
- 2進数を10進数に変換します。負数・小数の値にも対応しています。
- hexToDec (自作関数)
- 16進数を10進数に変換します。負数・小数の値にも対応しています。
- decToHex (自作関数)
- 10進数を16進数に変換します。負数・小数の値にも対応しています。
- decToBin (自作関数)
- 10進数を2進数に変換します。負数・小数の値にも対応しています。
- radToDeg (自作関数)
- 弧度法 から 度数法 に変換します。
- degToRad (自作関数)
- 度数法 から 弧度法 に変換します。
- 16進数
- ARABIC (自作関数)
- ローマ数字 を アラビア数字 に変換します。
- ROMAN (自作関数)
- アラビア数字 を ローマ数字 に変換します。
- ABS (スクリプト関数)
- 引数の絶対値(\(|x|\))を返します。
- ARCCOS (スクリプト関数)
- 引数の 逆余弦 を求めます。
- CEIL (スクリプト関数)
- 正の値へ切り上げた数値を返します。
- LN (スクリプト関数)
- 自然対数(\(\log_e{x}\))を求める。
- LOGN (スクリプト関数)
- Baseを底とするXの対数(\(\log_{Base}{x}\))を求める。
- ZCUT (スクリプト関数)
- マイナス値は0にして返します。
- isEven (自作関数)
- 偶数かどうかを調べます。
- isOdd (自作関数)
- 奇数かどうか調べます。
- ARCSIN (スクリプト関数)
- 引数の 逆正弦 を求めます。
- EXP (スクリプト関数)
- 自然指数関数(\(y=e^{x}\))を求める。
- GCD (自作関数)
- 最大公約数 を求めます。
- LCM (自作関数)
- 最小公倍数 を求めます。
- ARCTAN (スクリプト関数)
- 引数の 逆正接 を求めます。
- INT (スクリプト関数)
- 小数点以下を切り落とした数値を返します。
- POWER (スクリプト関数)
- 数値のべき乗(\(\small{Base}^{Exponent}\))を求めます。
- isPrime (自作関数)
- 指定した数値が 素数 かどうかを調べます。
- normalizeAngle (自作関数)
- 度単位の角度を0~360度に正規化します。
- divisors (自作関数)
- 引数に指定した数値の約数のリストを返します。
- digitSum (自作関数)
- 数値の各桁の和を返す
- Collatz (自作関数)
- コラッツ数列 を求め結果を配列で返します。
- Kaprekar (自作関数)
- カプレカ数 を求め結果を配列で返します。
- RANDOM (スクリプト関数)
- ランダムな値を返します。
- ROUND (スクリプト関数)
- 指定した位置で偶数丸めした値を返します。
- SQRT (スクリプト関数)
- 平方根(\(\sqrt{x}\))を求める。
- STRCONV (スクリプト関数)
- 文字列を変換します。(大文字小文字・かなカナ、全角半角)
- Application.CentimetersToPoints メソッド (Excel)
- センチメートル単位の数値を、ポイント(1ポイントは0.35mm)単位に変換します。
- Range.ConvertHangulAndHanja メソッド (Word)
- 指定範囲をハングルから漢字または漢字からハングルに変換します。
- Endian (自作関数)
- ビッグエンディアン・リトルエンディアンをもう一方のエンディアンに相互変換します。
- fact (自作関数)
- 引数に指定した数値の 階乗 を求めます。
- factDouble (自作関数)
- 引数に指定した数値の 二重階乗 を求めます。