Upload
anne-strickland
View
225
Download
0
Tags:
Embed Size (px)
Citation preview
Lecture Overview• Binary Numbers• Binary Arithmetic• ASCII Code• Machine Code• Instruction Format• Advantages and disadvantages
of machine code
What is “Binary”?• A coding system using binary
digits 0 and 1• Represent a letter, digit or other
character in a computer or other electronic devices
0 1OFF ON
You Do The MathWhen we talk numbers, we use a base-10 system, because we use ten characters to write out all of our numbers. • Computers using
binary language operate on a base-2 number system, because the two numbers they use are “0” and “1”.
0 1 2 3 4 5 6 7 8 9
0 1
Each is a binary digit or “bit”Each bit represents a power of two (22, 23, 24,etc)
Alphabet
Our class uses the English language consisting of 26 characters, arranged together in a variety of ways, to communicate. • Computers use
binary language consisting of 2 characters, arranged together in groups of eight, to communicate.
Aa Bb Cc Dd Ee Ff Gg Hh Ii Jj Kk Ll MmNn Oo Pp Qq Rr Ss Tt Uu Vv Ww Xx Yy Zz
Aa = 01000001 01100001Zz = 01011010 01111010
8 bits = 1 byte
Binary Arithmetic• Binary to Decimal(denary):
Binary 1 0 1 1 0
Power of Two 24 23 22 21 20
16 8 4 2 1
Binary x Power of Two
16 0 4 2 0
Result 16+0+4+2+0
= 22
Binary Arithmetic• Decimal (denary) to Binary:
Number Divide By Result Remainder
23 2 11 1
11 2 5 1
5 2 2 1
2 2 1 0
1 2 0 1
Read from bottom to top
Result =10111
Binary Arithmetic• Decimal Addition
• Binary Addition
22+ 23 45
10110 + 10111 101101 • 0 plus 0 produces 0
• 0 plus 1 produces 1• 1 plus 1 produces 0 with a ‘carry’ of 1
into the next most significant place• 1 plus 1 plus 1 produces 1 with a
‘carry’ of 1 into the next most significant place
Binary Arithmetic• Decimal Multiplication
• Binary Multiplication
5× 3 15
101 × 011 101 101 000 000 001111
Alphanumeric Codes• Beside Numbers, we have to
represent other types of information:– Letter of alphabet, mathematical
symbols
• American Standard Code for Information Interchange (ASCII) - 1968
ASCII Code• Uses 7 bits to encode 128 characters• 7 bits of ASCII Code
– (b6 b5 b4 b3 b2 b1 b0)2
• One ASCII character is stored using a byte• One unused bit can be used for other
purposes such as representing Greek alphabet, italic type font, etc.
• The eighth bit can be used for error-detection
ASCII Code• 128 different characters
– 26 + 26 + 10 = 62 (letters and decimal digits)
– 32 special printable characters %, *, $
– 34 special control characters (non-printable): BS, CR, etc.
• Example:
– A 65 = (1000001),…, a 97 = (1100001) – 0 48 = (0110000), …,9 57 = (0111001)
What is a “Machine Code”?• The lowest and most elementary
level of Programming Language.• 1st type of PL to be developed.• Represented inside the computer by
a String of binary digits (bits) 0 and 1.• The symbol 0 stands for the absence
of Electric Pulse and 1 for the presence of an electric pulse.
Why “Machine Code”?• Their order tells the computer
what to do.• All other kinds of software need
to be translated into machine code before they can be used.
Instruction Format• Each instruction is a number
that combines:– An operation code (opcode) that
picks a hardware function– One or two input operands (where
input comes from)– One output operand (where result
goes)
Opcode and operand• An opcode identifies which basic
computer operation in the instruction set is to be performed. It tells the computer to do something.
• Operands are typically memory or registry addresses.
• Opcode is like a verb in a sentence, operands are like the subject in a sentence.
Machine Code Instruction
LD, A, numberLoad A with
number. A stands for “accumulator” and LD is short for “load”
Load A with number. A stands for “accumulator” and LD is short for “load”
Opcodes and operands are separated by commas
Opcodes and operands are separated by commas
Advantages of Machine Code• Makes fast and efficient use of
the computer• Requires no translator to
translate the code i.e. directly understood by the computer
Disadvantages of Machine Code• All operations codes have to be
remembered• All memory addresses have to be
remembered• It is hard to amend or find errors in
a program written in the machine language
• These languages are machine dependent