Converting Between Decimal, Octal, and Binary Numbers (31789)



The information in this article applies to:

  • Microsoft Visual Basic for MS-DOS
  • Microsoft Visual Basic Standard Edition for Windows 1.0
  • Microsoft Visual Basic Standard Edition for Windows 2.0
  • Microsoft Visual Basic Standard Edition for Windows 3.0
  • Microsoft Visual Basic Professional Edition for Windows 2.0
  • Microsoft Visual Basic Professional Edition for Windows 3.0
  • Microsoft BASIC Compiler, when used with:
    • the operating system: Mac OS (all versions)
  • Microsoft BASIC Interpreter for Apple Macintosh 1.0
  • Microsoft BASIC Interpreter for Apple Macintosh 1.01
  • Microsoft BASIC Interpreter for Apple Macintosh 2.0
  • Microsoft BASIC Interpreter for Apple Macintosh 2.1
  • Microsoft BASIC Interpreter for Apple Macintosh 3.0
  • Microsoft QuickBASIC 1.0
  • Microsoft QuickBASIC 1.01
  • Microsoft QuickBASIC 1.02
  • Microsoft QuickBASIC 2.0
  • Microsoft QuickBASIC 2.01
  • Microsoft QuickBASIC 3.0
  • Microsoft QuickBASIC 4.0
  • Microsoft QuickBASIC 4.0b
  • Microsoft QuickBASIC 4.5
  • Microsoft BASIC Compiler for MS-DOS and OS/2 6.0
  • Microsoft Basic Professional Development System (PDS) for MS-DOS and MS OS/2 7.0
  • Microsoft Basic Professional Development System (PDS) for MS-DOS and MS OS/2 7.1
  • Microsoft GW-Basic Interpreter 3.20

This article was previously published under Q31789

SUMMARY

The Microsoft Basic code below demonstrates how to perform the following conversions between decimal, octal, and binary numbers:

  • Convert an octal number to a decimal (base 10) number
  • Convert a decimal number to an octal (base 8) number
  • Convert a decimal number to a binary (base 2) number

MORE INFORMATION

The following code example will perform the conversions:
' 1. Octal string to decimal Number:
INPUT "INPUT Octal number:"; octal$
PRINT VAL("&O" + octal$)

' 2. Decimal Number to octal string:

INPUT "INPUT Decimal number:"; Decimal
PRINT OCT$(Decimal)

' 3. Decimal Number to Binary string:
Bin$ = ""
INPUT "INPUT Decimal number:"; Decimal
FOR i = 14 TO 0 STEP -1           ' Positive numbers only
  pow2 = 2 ^ i
  IF Decimal >= pow2 THEN
     Decimal = Decimal - pow2: Bin$ = Bin$ + "1"
  ELSE Bin$ = Bin$ + "0"
  END IF
NEXT i
PRINT Bin$
				
The above information applies to most Microsoft Basic products, including the following Basics:

  • Microsoft Visual Basic version 1.0 for MS-DOS
  • Microsoft Visual Basic versions 1.0, 2.0, 3.0 for Microsoft Windows. NOTE: You will need to replace the INPUT statement in the above code with a feature that is supported in this product, such as a text box used with a Click event procedure.
  • Microsoft Basic Compiler version 1.0 for the Apple Macintosh
  • Microsoft Basic Interpreter versions 1.0, 1.01, 2.0, 2.1, and 3.0 for the Apple Macintosh
  • Microsoft QuickBasic Compiler versions 1.0, 1.01, 1.02, 2.0, 2.01, 3.0, 4.0, 4.0b, and 4.5 for the IBM PC
  • Microsoft Basic Compiler versions 5.35 and 5.36 for MS-DOS
  • Microsoft Basic Compiler version 6.0 for MS-DOS and MS OS/2
  • Microsoft Basic PDS versions 7.0 and 7.1 for MS-DOS and MS OS/2
  • Microsoft GW-Basic Interpreter version 3.2

Modification Type:MinorLast Reviewed:8/16/2005
Keywords:KB31789