hexToBin

16進数を2進数に変換します。2進数を16進数に変換するにはbinToHex (自作関数)を使います。

構文
  1. UString = hexToBin( hex )
引数
hex必須
16進数
戻り値
2進数に変換した値

プログラム

UWSC
//////////////////////////////////////////////////
// 【引数】
//   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

UWSC
DIM array[] = "F", "FF", "CCBA", "73.AD", "FF.184", "A1E.1", "F77.42", "CD21.74"

FOR item IN array
	PRINT item + "," + hexToBin(item)
NEXT
結果
CSV(区切り文字「,」)
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 (自作関数)
引数に指定した数値の 二重階乗 を求めます。