Number Bases
This article teaches basic computer problem-solving skills for beginners. It begins with number bases: decimal, binary, octal, and hexadecimal number conversions were treated. It further discusses the fundamentals of the BASIC programming language for beginners.
- Number Bases
- Decimal Numbers
- Binary Numbers
- How to convert decimal number to octal number
- Octal Numbers
- Hexadecimal
- How to convert from hex to decimal
- Using the Computer to convert Decimal, Binary, Octal and Hex
- Units of Storage
- Conversion from byte to kilobyte, megabyte, gigabyte and terabyte
- Conversion from TB to GB, MB, KB, and bytes
- Computer Program
- Computer Programming Language
- BASIC Language
- Key BASIC Statements
- Line Number
- Remark (REM)
- Assignments
- LET statement
- INPUT statement
- DATA statement
- OUTPUT statement
- Programme Terminator
- STOP statement
- END statement
- Examples of Simple Program
Decimal Numbers
Decimals are our natural way of writing numbers. We grew up to learn how to read and write numerals as 0, 1, 2, … 99, 100, … 250, …, numbers expressed in this fashion are traditionally called decimal numbers. However, numbers can also be written in bases other than base 10, such bases include binary or base 2, octal or base 8, and hexadecimal or base 16. When numbers are written on other bases, it is important to specify the base on which the said number is written.
Binary Numbers
Binary numbers are numbers written in base 2. On number bases, the binary system is internally by digital electronics and all computer-based devices. It represents a number of 0 and 1 notations.
How to convert from decimal to binary
To convert from a number in base 10 to a number in base 2, simply divide the given decimal number by 2. For example, convert 9 to a number in base 2.
Solution
9 ÷ 2 = 4 R 1 (dividing 9 by 2 gives 4 remainder 1)
4 ÷ 2 = 2 R 0 (dividing 4 by 2 gives 2 remainder 0)
2 ÷ 2 = 1 R 0 (dividing 2 by 2 gives 1 remainder 0)
1 ÷ 2 = 0 R 1 (dividing 1 by 2 gives 0 remainder 0)
The remainders are then written from down to up (i.e. starting from the last remainder to the first remainder) we have:
9 = 1001_{2}
Task One: d
Convert the following decimal numbers to a number in base 2. (a) 5 (b) 55 (c) 80 (d) 111 (e) 16
Answers:
(a) 101 (b) 110111 (c) 1010000 (d) 1101111 (e) 10000
How to convert from binary to decimal
In this case, you will assign power (starting with y … 2, 1, 0, …) to the binary number from the left. Where y is the count number of the binary number minus 1. For example, convert 101110_{2} to a number in base 10.
Solution
1^{5} 0^{4} 1^{3} 1^{2} 1^{1} 0^{0}
(here, y = 6 – 1 = 5; assign powers 5, 4, 3, 2, 1, 0, from the left)
Multiply each entry by 2 raised to the assigned power and sum:
1×2^{5} + 0x2^{4} + 1×2^{3 }+ 1×2^{2} + 1×2^{1} + 0x2^{0}
Multiplying out the powers and summing the above we have:
1×32 + 0x16 + 1×8 + 1×4 + 1×2 + 0x1
(note that 2^{0} = 1)
32 + 0 + 8 + 4 + 2 + 0 = 46
Therefore, 101110_{2} = 46
How to convert decimal number to octal number
Octal number is a number expressed in base 8. In number bases, to convert from decimal number to octal, follow the same method used when converting decimal to binary, but divide by 8 instead of 2. For example, convert 78 to a number in base 8.
Solution
78 ÷ 8 = 9 R 6 (dividing 78 by 8 gives 9 remainder 6)
9 ÷ 8 = 1 R 1 (dividing 9 by 8 gives 1 remainder 1)
1 ÷ 8 = 0 R 1 (dividing 1 by 8 gives 0 remainder 1)
Therefore, 78 = 116_{8}
Octal Numbers
Octal numbers are numbers in base 8.
Converting from base 8 to decimal
To convert from base 8 to a number in base 10, follow the same method used in converting from base 2 to base 10, however, multiply by 8 instead of 2. For example, convert 561_{8} to a number in base 10.
Solution
5^{2} 6^{1} 1^{0}
(Here, y = 3 – 1, assign 2, 1, 0)
5×8^{2} + 6×8^{1} + 1×8^{0} = 5×64 + 6×8 + 1×1 = 320 + 48 + 1 = 369
Therefore, 561_{8} = 369
Hexadecimal
In number bases, Hexadecimal or simply Hex, is a number system represented in base 16. The decimal system can represent only 10 digits while the hex system has 16 digits. In hex, the number bases system is represented as 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F. The hex number system is mostly used in information technology. For example, it can be used to represent color in HTML programming language: white is represented by FFFFFF while black is represented by 000000.
How to convert from decimal to hexadecimal
To convert from decimal to hex, follow the same principle used when converting from decimal to binary, but divide by 16 instead of 2. After you have divided a decimal number by 16, use the table below to represent the remainder.
The decimal to hexadecimal conversion chart
Decimal | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 |
Hex | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B | C | D | E | F |
For example, convert 92_{10} to a number in base 16.
Solution
92 ÷ 16 = 5 R 12 (dividing 92 by 16 gives 5 remainder 12)
5 ÷ 16 = 0 R 5 (dividing 5 by 16 gives 0 remainder 5)
From the decimal to hex conversion table, 12 = C.
Therefore, 92_{10} = 5C_{16}
How to convert from hex to decimal
To convert a hex number to decimal, follow the same principle used in converting from binary to decimal. For example, convert 6D1_{16} to a number in base 10.
Solution
6 D 1
(Note: D = 13; y = 3 – 1 =2, hence, assign 2, 1, 0)
We therefore have:
6^{2} 13^{1} 1^{0} = 6×16^{2} + 13×16^{1} + 1×16^{0} = 6×256 + 13×16 + 1×1 =
1536 + 208 + 1 = 1745
Therefore, 6D1_{16} = 1745_{10}
Using the Computer to convert Decimal, Binary, Octal and Hex
You can easily use the calculator application in your computer to convert from decimal to binary, octal or hex number systems and vice versa. Simply do the following.
- Open the calculator application (type calc in the search box or type calc in the Run box and press OK)
The calculator application will open as shown below.
- In the calculator window, click View and from the drop-down menu select Programmer or simply press Alt+3. The calculator application changes to the window shown below.
- On the window, select the number system you want and type in the number you want to convert.
- After typing in the number in the given base, click select the base you want to convert the number to. For example, select Hex and type in 5E, then select Dec, your 5E will become 94.
- Do the same for each of the numbers you want to convert by changing from any of Dec, Hex, Bin or Oct.
UNITS OF STORAGE IN COMPUTER
Units of Storage
Computers store data in different storage devices such as a Hard disk, RAM, flash drive, etc. Data are stored in these devices in binary format (0s and 1s). In order to measure the capacity of the different storage devices, a unit of measurement becomes necessary.
In mathematics and all works of life, there are different units of measurement. For example, length and distance are measured in meters, weight, and mass is measured in grams, the liquid is measured in liters, and time is measured in minutes. In each of these items, there are different by identical units of measurement to ascertain the actual quantity. Length has varying units such as millimeter (mm), centimeter (cm), etc; weight, following similar pattern has milligram, centigram, etc. In this case, millimeter and milligram are the smallest units of measuring length and weight respectively.
Since these items can be accurately measured, it is necessary that data be measured in like manner. In such case, we have different units of measuring data, namely: byte, kilobyte, megabyte, gigabyte, and terabyte.
Bit:
Bit is the short form for a Binary digit (0 or 1) and is the smallest unit of data in computer and electronic communication. Computers are designed to execute instructions in multiples of bits. A bit can be viewed as a mechanical switch, which can be either switched on or off.
Nibble:
A nibble is four binary digits, it contains four bits (0010) or half an octet.
Byte:
A byte is the smallest unit of measuring the size of a memory. It can store one character at a time. A byte is made up of 8-bits or an octet or 2 nibbles, i.e. 10110101 makes up a byte. With 8 bits you can store any number between 0 and 255. Bytes are measured in powers of 2 as follow:
2^{10} = 102^{4} = Kilobyte
2^{20} = 1024^{2} = 1048572 = Megabyte
2^{30} = 1024^{3 }= 1073741824 = Gigabyte
2^{40} = 1024^{4 }= 1099511627776 = Terabyte
A kilobyte can be expressed as one thousand bytes, megabyte expressed as one million bytes, gigabyte as one billion bytes and terabyte as one trillion bytes.
Word:
A word is the number of bits that are manipulated as a unit by the particular CPU of the computer. It varies depending on the computer architecture. Data is fetched from memory to the processor in word size chunks and manipulated by the ALU in word size chunks. A computer architecture can be 16-bit, 32-bit or 64-bit. A word contains two bytes or four nibbles. For a computer with a 16-bit architecture, word is 2 bytes or 4 nibbles. For a 32-bit architecture, word is 4 bytes or 8 nibbles. This can also be called a double word.
Difference between kilometer, kilogram, and Kilobyte
A kilometer is a metric system unit of measuring length and distance. Kilo means 1000 of, hence kilometer means 1000 meters. Similarly, the kilogram is 1000 grams, a standard unit of measuring weight while kilobyte is 1000 bytes, a standard for measuring data storage.
Conversion from byte to kilobyte, megabyte, gigabyte and terabyte
Before conversion, it is important to understand that 1024 bytes (b) make 1 kilobyte (Kb), 1024 (kb) make 1megabyte (MB), 1024 (MB) make 1 gigabyte (GB) and 1024 (GB) make 1 terabyte (TB).
To convert from bytes to KB, MB, GB or TB, we simply divide the given size by 1024 at each level.
For example, convert 10,256,879bytes to gigabyte.
Solution
We shall move from bytes to KB to MB and to GB
10256879 ÷ 1024 = 10016.48 KB
10016.48 ÷ 1024 = 9.781 MB
9.781 ÷ 1024 = 0.00956 GB
Therefore, 10256879 bytes = 0.00956GB
Example 2: Convert 2,789,650 KB to Gigabyte
Solution
2789650 ÷ 1024 = 2724.27 MB
2724.27 ÷ 1024 = 2.66 GB
Conversion from TB to GB, MB, KB, and bytes
To convert from TB to GB, MB, KB, and bytes, we simply multiply the given size by 1024 at each level.
For example, convert 1.66GB to kilobytes.
Solution
We shall move from GB to MB to KB
1.66 x 1024 = 1699.84MB (multiply by 1024 to get MB)
1699.84 x 1024 = 1740636.16KB (multiply by 1024 to get KB)
Therefore, 1.66GB = 1,740,636.16KB
Example 2: If the size of a diskette is 1.44MB, then how many characters can a diskette store?
Solution
1 character = 1 byte, therefore, the total number of bytes = total number of characters.
To solve this problem, we shall move from MB to KB to B
1.44 x 1024 = 1474.56KB
1474.56 x 1024 = 1,509,949.44 bytes
Therefore, a diskette can store
1,509,949.44 characters.
COMPUTER PROBLEM SOLVING SKILLS
Computer Program
A computer program is a list of commands or instructions that tell a computer what to do. It can be defined as a sequence of instructions, written by a programmer or group of programmers using a programming language to perform a specified task with a computer.
A computer program when installing in a desktop computer, enables computer users to perform specific tasks on the computer. There are thousands of computer programs in the market and on the internet, each designed to achieve a definite purpose. Some of these programs are free while some are designed for commercial purpose.
Examples of a computer program include Microsoft office suite (Word, Excel, Powerpoint, Outlook, Infopath, etc), CorelDraw, AutoCAD, Mozilla Firefox, Safari, Dreamweaver, etc.
Computer Programming Language
A programming language is a computer program used to write source codes that tell the computer what to do. Programming languages are used by programmers to develop all computer programs and computer software.
Computer programming is the process of writing or editing source code (a collection of instructions for the computer to follow). A programmer is someone who writes source codes i.e. who develops a computer program.
The following are examples of programming language: LOGO, BASIC, C, C++, C#, JAVA, PASCAL, COBOL, Visual Basic, Fortran, etc.
BASIC
BASIC Language
Meaning of basic
BASIC is an easy general purpose and high-level programming language for beginners. The acronym BASIC stands for Beginners All-purpose Symbolic Instructions Code. BASIC was designed by John Kemeny and Thomas Kurtz on May 1, 1964.
BASIC Character Set
A character, in computer language, is any symbol that can be stored in one byte. A character set is a list of defined characters recognized by a computer hardware and software. The BASIC character set is a list of characters recognized by the BASIC programming language. In BASIC, there are 3 types of characters, namely:
Alphabetic characters: This includes the standard English alphabets A, B, C, …, X, Y, Z.
Numeric characters: This includes the standard numbers 0, 1, …, 9. When using numeric data in a BASIC program, you must adhere to the following conventions. Do not use “$” (dollar sign), ‘‘,” (comma), or the “/” (slash) in a BASIC number.
Special characters: The special characters used in BASIC include:
Symbol | Interpretation | Symbol | Interpretation |
Blank | ’ | Single quotation mark | |
= | Equal sign or assignment symbol | ” | Double quotation mark |
+ | Plus sign | ; | Semicolon |
– | Minus sign | : | Colon |
* | Asterisk or multiply symbol | ! | Exclamation symbol |
/ | Slash or divide symbol | ? | Question mark |
^ | Up-arrow or exponentiation symbol | & | Ampersand |
) | Right parenthesis | < | Less than symbol |
( | Left parenthesis | > | Greater than symbol |
, | Comma | # | Number or pound sign |
. | Point or period | $ | Dollar sign |
>= | greater than or equal | % | Percent sign |
<= | less than or equal | <> | not equal |
** | exponentiation |
Key BASIC Statements
Statements are used when programming in BASIC. Some of these statements include the Line number, Remark, Assignments, Output, and Programme Terminator.
Line Number
A line number is used in BASIC to create a sequence. The line number is important in BASIC because BASIC is an unstructured programming language. It helps the programmer to provide the targets of branching in the programme sequence.
For example:
10 If y = 15 GOTO 40
20 y = y + 5
30 GOTO 10
40 PRINT “y is 15”
The numbers 10, 20, 30 and 40 are line numbers.
Remark (REM)
A remark or simply REM statement is used to provide a programmer’s comment in the program sequence. It is a non-executable statement which gives an explanation of the program being written. When a statement with the keyword REMARK is used, the entire line on which the statement appears is considered a comment.
For example
10 REMARK This program is used to add two numbers together
20 REMARK in order to arrive at an answer
30 INPUT x
From the above, each line that begins with remark is ignored during programme execution. As can be seen, the remark statement gives a clear description of what the programme is designed for. It gives readability and helps to document and test the programme at a later time.
Assignments
In BASIC, an assignment statement gives a value to a variable. A variable is an item that does not have a particular value, that is, the value can change. There are three key assignment statements used in BASIC, namely: LET, INPUT and DATA.
Note that the equal sign (=) is used to assign a value to a variable.
LET statement
The LET statement is used to assign a constant value to a variable name, a variable to a variable name, or the result of an expression to a variable name.
Examples
10 LET X = 15 (Assign a constant to a variable name)
20 LET Y = Y + X (Assign a result of the expression to a variable)
30 LET Z = Y (Assign a variable to a variable name)
INPUT statement
The INPUT statement is used to collect information or data from the programme user. It is designed so that the programme user can enter the requested information during the programme execution.
For example, This simple program is used to calculate the average of the values entered by a user.
10 REMARK This program calculates the average of 5 numbers
20 REMARK entered by a user
30 PRINT “Please ENTER five numbers, separated by commas”
40 REMARK The next line is used to collect the numbers
50 INPUT num1, num2, num3, num4, num5
60 REMARK The next line is used to compute the average
70 Avg = (num1 + num2 + num3 + num4 + num5) / 5
80 PRINT “The average of your five numbers is: ”; Avg
DATA statement
The DATA statement provides a convenient way to insert data into programs. It is used to store both numeric and string values so that these values can be accessed using the READ statement in a BASIC program. Note the following when using the DATA statement:
- Constantsare numeric constants in any format. No expressions are allowed in the list.
- Single string statements should not be enclosed in quotation marks. You can enclose strings in quotation marks if they contain commas, colons, or significant leading or trailing spaces.
- DATA statements are not executable. They may be placed anywhere in the program. A DATA statement can contain as many constants that will fit on a line (separated by commas), and any number of DATA statements may be used in a program.
- READ statements access the DATA statements in order (by line number). The READ statement read the data contained in the DATA statement as one continuous list of items not minding how many items are on a line or where the lines are placed in the program.
- The variable type (numeric or string) given in the READ statement must agree with the corresponding constant in the DATA statement, or a “Type Mismatch” error occurs. That is if an entry in a DATA statement is “Staff”, the corresponding variable in the READ statement must be a string.
- DATA statements may be reread from the beginning by use of the RESTORE statement.
Example
CLS
10 PRINT “Country”, “State”, “City”, “Postcode”
20 DATA Nigeria, Abia, Umuahia
30 DATA 440002
40 READ A$, B$, C$, D
50 PRINT A$, B$, C$, D
OUTPUT statement
The output statement is simply used to display results on the screen. The major output statement used in BASIC is the PRINT statement. In the above examples, we have illustrated the use of the PRINT statement.
Programme Terminator
In BASIC, programme terminator is used to terminate the program execution. There are two statements that can be used: STOP statement and END statement.
STOP statement
STOP statement is used to terminate program execution and return to command level. It can be used anywhere in a program to terminate execution. When a STOP is encountered, the following message is printed: “Break in ‘line number’”. The STOP statement does not close files. You can continue program execution using CONT command after a STOP statement is encountered.
END statement
END statement is used to terminate program execution, close all files, and return to command level. It does not display “Break in ‘line number’” when encountered and it can be placed anywhere in a program to terminate program execution. When writing a program, it is optional to use the END statement.
Examples of Simple Program
200 LET A = 25
300 LET B = 6
400 LET C = A + B
500 PRINT C
600 END
- 10 REM Find the perimeters of rectangles
20 PRINT “Type in two numbers separated by commas”
30 INPUT X, Y
40 IF A >= 50 GOTO 90
50 LET Z = 2*X + 2*Y
60 PRINT “SIDE”, “SIDE”, “PERIMETER”
70 PRINT X, Y, Z
80 GOTO 20
90 END
- 10 REM Find the sum of any 5 numbers
20 PRINT “Type any 5 numbers separated by comma”
30 INPUT A, B, C, D, E
40 LET S = A + B + C + D + E
50 PRINT “Sum of Numbers is:”; S
60 END