Word is defined as the number of bits a microprocessor can recognize.
1 byte = 2 nibbles = 8 bits.
1 byte = 2 nibbles = 8 bits.
Programs written in machine language can not be understood by most of the people, therefore, we use assembly language.
Assembly language has English-like words for a better understanding of the program to common people.
The disadvantage of assembly language is it can not be transferred from one machine to another as it is specific t a given machine.
Assembly language has English-like words for a better understanding of the program to common people.
The disadvantage of assembly language is it can not be transferred from one machine to another as it is specific t a given machine.
Machine Language:-
A number of words for a machine is fixed as the number of bits for a machine are fixed.
A machine with8-bitt word length has a maximum of 256 words ( 2^8 ).
Instructions are formed my the microprocessor design engineer, who selects a particular combination of words to give them a specific meaning by applying the logic.
A machine with8-bitt word length has a maximum of 256 words ( 2^8 ).
Instructions are formed my the microprocessor design engineer, who selects a particular combination of words to give them a specific meaning by applying the logic.
8085 is the improved version of earlier processor 8080 A.
It has a word length of 8 bits.
It has a word length of 8 bits.
An INSTRUCTION is a binary pattern entered through an input device in memory to command the microprocessor for performing that specific function.
8085 has 246-bit patterns, amounting to 74 different instructions for performing various operations. 8085 has two more instructions than 8080 A microprocessor.
for example - 0011 1100 is equivalent to 3 C . hence, instead of writing 0011 1100 we directly write 3 C for our convenience.
for example - 0011 1100 is equivalent to 3 C . hence, instead of writing 0011 1100 we directly write 3 C for our convenience.
Assembly Language:-
Mnemonics- is a Greek word meaning memory aid or mindful.
Both the machine language and the assembly language are considered low-level languages for programming.
We convert the assembly language program written by us in hexadecimal code which is then electronically further converted into binary code so that computer or processor can comprehend and perform accordingly.
ASCII-American Standard Code Of Information Interchange.
hexadecimal value decimal value
30H to 39H 0 to 9
41H to 5AH A to Z
30H to 39H 0 to 9
41H to 5AH A to Z
Writing, Assembling and Executing Assembly Language Program(ALP):-
Steps : –
- Write the Mnemonic provided by the manufacturer.
- Find the hexadecimal Machine code for each of the instructions by searching through the set of instructions.
- Load the program in the user memory in sequential order by using the hexadecimal keyboard peripheral.
- Execute the program, the result will be displayed on the output(LEDs, LCD or Seven Segmented Display).
Assembler is the mnemonic program that translates the entered ASCII keyboard inputs into the corresponding binary machine code for a microprocessor.
Block Diagram Of a High-Level Language Machine Code:-
Source Code —> Compiler/ Interpreter —> Object Code.
An interaction between the hardware and the software is managed by a set of programs called operating system.
Monitor Program is a code that accepts an input from the keyboard and translates it into its binary equivalent.
Hardware and Programming Model of 8085:-
A MODEL is a conceptual representation of a real object.
Hardware Model’s Block Diagram:-
The First block includes the ALU and 8-bit register called the Accumulator, instruction decoder and flags.
The Second block includes other 8 bit and 16-bit registers which are available for the user.
The Second block includes other 8 bit and 16-bit registers which are available for the user.
All the results are stored in the Accumulator, while making respective flip-flops (Flags) set or reset.
It has three Buses:-
8 bit bi-directional Data Bus – transfers data.
16-bit unidirectional Address Bus – send out memory Address.
Control Bus – timing signals.
8 bit bi-directional Data Bus – transfers data.
16-bit unidirectional Address Bus – send out memory Address.
Control Bus – timing signals.
Programming Model’s Block Diagram:-
Registers – Six general purpose registers namely B,C ; D, E ; H, L;
They form three register pairs so that we can perform 16-bit operations.
Register are used to store or copy data using data storing and copying instructions.
They form three register pairs so that we can perform 16-bit operations.
Register are used to store or copy data using data storing and copying instructions.
Accumulator – it is a special register having 8-bit memory space which performs the ALU operations. Normally,the result is stored in this register by default.
Flags – ALU has 5 flags (flip-flops) which are set or reset after the operation, according to the data conditions stored in the registers.
Flag Register’s Block Diagram:-
Namely :
D7- Sign Flag ;
D6 – Zero Flag ;
D4 – Auxiliary Carry Flag ;
D2 – Parity Flag ;
D0 – Carry Flag ;
D7- Sign Flag ;
D6 – Zero Flag ;
D4 – Auxiliary Carry Flag ;
D2 – Parity Flag ;
D0 – Carry Flag ;
This flags control the flow of program as they set the decisions making processes in the microprocessor.
To do this we have some mnemonics like – JC ; JNC ; JZ ; JNZ ;
To do this we have some mnemonics like – JC ; JNC ; JZ ; JNZ ;
Sign Flag is set when D7 is 1.
Zero Flag is set when the result is zero.
Auxiliary Carry Flag is set when a carry is generated by the digit D3 and passed to D4. No jump instruction is associated with this flag.
Parity Flag is set when it has even number of one’s in its binary equivalent.
Carry Flag is set when the operation results into a carry.
Zero Flag is set when the result is zero.
Auxiliary Carry Flag is set when a carry is generated by the digit D3 and passed to D4. No jump instruction is associated with this flag.
Parity Flag is set when it has even number of one’s in its binary equivalent.
Carry Flag is set when the operation results into a carry.
Program Counter – is used to sequence the execution of the instructions. Its function is to point to the memory address from which the next byte is to be fetched.
Stack Pointer– points to a memory location in RAM.
No comments:
Post a Comment