BBS: Inland Empire Archive Date: 10-07-92 (23:48) Number: 263 From: DEREK LYONS Refer#: NONE To: ALL Recvd: NO Subj: CONVERSION FUNCTIONS Conf: (2) Quik_Bas
Some interesting conversion functions:
FUNCTION Bin2Hex$ (Bin$)
Bin2Hex$ = Int2Hex$(Bin2Int%(Bin$))
END FUNCTION
FUNCTION Bin2Int% (Bin$)
FOR y = LEN(Bin$) TO 1 STEP -1
IF MID$(Bin$, y, 1) = "1" THEN ax% = ax% + (2 ^ z)
z = z + 1
NEXT
Bin2Int% = ax%
END FUNCTION
FUNCTION Hex2Bin$ (Hcs$)
Hcs$ = UCASE$(Hcs$)
lc = LEN(Hcs$)
FOR x = 1 TO lc
SELECT CASE MID$(Hcs$, x, 1)
CASE "0"
Out$ = Out$ + "0000"
CASE "1"
Out$ = Out$ + "0001"
CASE "2"
Out$ = Out$ + "0010"
CASE "3"
Out$ = Out$ + "0011"
CASE "4"
Out$ = Out$ + "0100"
CASE "5"
Out$ = Out$ + "0101"
CASE "6"
Out$ = Out$ + "0110"
CASE "7"
Out$ = Out$ + "0111"
CASE "8"
Out$ = Out$ + "1000"
CASE "9"
Out$ = Out$ + "1001"
CASE "A"
Out$ = Out$ + "1010"
CASE "B"
Out$ = Out$ + "1011"
CASE "C"
Out$ = Out$ + "1100"
CASE "D"
Out$ = Out$ + "1101"
CASE "E"
Out$ = Out$ + "1110"
CASE "F"
Out$ = Out$ + "1111"
END SELECT
NEXT
Hex2Bin$ = Out$
END FUNCTION
FUNCTION Hex2Int% (Hcs$)
Hcs$ = UCASE$(Hcs$)
Hex2Int% = Bin2Int%(Hex2Bin$(Hcs$))
END FUNCTION
FUNCTION Int2Bin$ (Dec%)
tdec% = Dec%
DO WHILE tdec% > 0
IF tdec% / 2 = tdec% \ 2 THEN
Bin$ = "0" + Bin$
ELSEIF tdec% / 2 <> tdec% \ 2 THEN
Bin$ = "1" + Bin$
END IF
tdec% = tdec% \ 2
LOOP
Int2Bin$ = Bin$
END FUNCTION
FUNCTION Int2Hex$ (Dec%)
Int2Hex$ = HEX$(Dec%)
END FUNCTION
* MegaMail 2.10 #0:Heads I win, Tails you lose.
--- WM v2.04/91-0077
* Origin: The Boardwalk! - (206) 941-3124 - Federal Way, WA (1:343/47)

Books at Amazon:
Back to BASIC: The History, Corruption, and Future of the Language
Hackers: Heroes of the Computer Revolution (including Tiny BASIC)
Go to: The Story of the Math Majors, Bridge Players, Engineers, Chess Wizards, Scientists and Iconoclasts who were the Hero Programmers of the Software Revolution
The Advent of the Algorithm: The Idea that Rules the World
Moths in the Machine: The Power and Perils of Programming
Mastering Visual Basic .NET