CME341 Dec. 10, 2016 Final Exam
|
|
- Dominick Jenkins
- 5 years ago
- Views:
Transcription
1 1 CME341 Dec. 10, 2016 Final Exam Time: 3.0 hours, Text Books, Notes and Computer Files Only NO CELL PHONES or LAPTOPS All questions are independent. Each assumes you are starting with the microprocessor constructed in the preamble. If a question has more than 1 part, e.g. a) and b), then each part after the first part builds on the previous part. That is to say the modifications in each part builds upon the parts that precede it. The worth of the question are explained in the preamble. Before starting the exam download all the files in the folder files_for_2016_final on the class website to a folder on your H drive. The path to this folder is Exam Files -> CME341_Exam_Files -> exams_2016_2017. Remember that from_ps must be hardwired to zero in the program sequencer used in the final exam.
2 1. Make the no-operation instruction that is referred to as NOPC8, which in machine code is 8 HC8, a skip one instruction instruction. It is to jump to the instruction located two beyond the NOPC8 instruction being executed. I.e. it is to skip the instruction following the NOPC8 instruction. 2 NB: Do not change reg_enables[4]. It should still be high when 8 HC8 is in the instruction register. Answer for seed == 8 HAA is 16 HA71C Listing for question org 8 H C8 start: NOPC E0 jmp start; should not execute this instruction 0002 CF NOPCF 0003 D8 NOPD DF NOPDF F load x0,#4 HF; 0006 A8 mov m, x0; 0007 A5 mov o_reg,m; 0008 C7 com x0; 0009 F0 jnz start; 000A C8 NOPC8 000B C8 NOPC8; should not execute this instruction ; which is now a skip instruction 000C E0 jmp start;
3 2. Make the y 1 register an accumulator when it is the destination of a move. That is a move to y1 instruction becomes y 1 = src + y1, where src is the ID of the register being moved to y1. The load instruction should not be altered. 3 Answer for seed == 8 HAA is 16 H047E Listing for question org 16 H0000; start: load x1,#4 H5; load m, #4 H1; load y1,#4 H2; y1 = A load y1,#4 HA; y1 = A 0004 DA add x1,y1; mov y1,x1; y1 = 5+A=F C mov y1,r; y1 = F+F=E D mov y1,m; y1 = E+1=F 0008 E1 jmp done; 0010 E1 done: jmp done; done 10H
4 3. Make NOPD8 a circular shift of r 1-bit to the left through the zero flag and NOPDF a circular shift of r 1-bit to the right through the zero flag. A circular shift 1-bit to the left through the carry flag shifts the bits in the r register 1-bit to the left with the most significant bit of r being shifted into the carry flag and the carry flag being shifted into the least significant bit of r. A circular shift 1-bit to the right through the carry flag is similar with the shift being in opposite direction. That is the least significant bit of r is shifted into the carry flag and the carry flag is shifted into the most significant bit of r. Note: The zero flag should operate as normal on other ALU instructions. 4 Answer for seed == 8 HAA is 16 H75A9 Listing for Question start: load x1,#8 H3; load y1,#8 H0; 0002 DA add x1,y1; r=4 b0011, zero_flag = 1 b E1 jmp loop1; 0010 D8 loop1: NOPD8; shift left through zero flag 0011 F1 jnz loop1; 0012 E2 jmp loop2; at this point zero_flag 1, r = 1000; 0020 align 0020 DF loop2: NOPDF; shift right through zero flag 0021 F2 jnz loop2; 0022 E3 jmp loop3; at this point zero_flag 1, r = 0001; 0030 align 0030 E3 loop3: jmp loop3; loop2 20H loop1 10H loop3 30H
5 4. The i register is the index register used in the indirect addressing of the data memory, i.e. the i register is used as the address for data memory. Change your microprocessor so that the i register is still auto-incremented, but the address used for data memory should be i+m. 5 NB: Make from_cu = { o_reg, o_reg }. Answer for seed == 8 HAA is 16 HDCA0 Listing for question org 16 H start: load m,#4 H3; increment value will be load i,#4 H6; load dm,#4 H5; load dm word number 9 with 5 ; i = i + m = load m,#4 H0; change increment to load i,#4 H9; i = A7 mov o_reg,dm; o_reg = 5, i = load o_reg,#4 H0; 0007 E1 jmp done; 0010 E1 done: jmp done; done 10H
6 5. Modify your microprocessor to change the way the conditional jump operates (but do not change the unconditional jump). The same rules apply for when to jump and when not to jump, i.e. if the zero_flag is zero then jump. The jump address of new instruction does not the input jump_address. The jump address is derived from the address of the instruction. It must be a valid jump address that is closest to, but lower than, the address of the conditional jump instruction being executed. I.e. the jump must be at least 1 back and could be as much as 16 back. To better explain this two examples are given: Example 1: The jnz instruction is located at address 8 H29 in program memory. If the zero flag is zero when this jnz instruction is executed the jump would be to program memory address 8 H20. Example 2: The jnz instruction is located at address 8 H20 in program memory. If the zero flag is zero when this jnz instruction is executed the jump would be to program memory address 8 H10. Answer for seed == 8 HAA is 16 H1E7A 0000 org 16 H start: load x1,#4 H2; load y1, #4 H1; 0002 E1 jmp loop1; 0010 D9 loop1: sub x1,y1; C mov x1,r; 0012 FF jnz 8 HF0; ignore jump address and jump to loop load x1,#4 H3; 0014 E2 jmp loop2; 0020 align 0020 D9 loop2: sub x1,y1; decrement x C mov x1,r; 0022 C8 NOPC8; 0023 C8 NOPC8; 0024 C8 NOPC8; 0025 C8 NOPC8; 0026 C8 NOPC FF jnz 8 HF0; ignore jump address and jump to loop E3 jmp loop3; 0030 align 0030 E3 loop3: jmp loop3; loop2 20H loop1 10H loop3 30H 6
7 6. (a) Modify your computational unit to add a 4-bit timer called timer. The function of timer is described below: i. timer is to be synchronously cleared by sync_reset. ii. If timer contains 4 H0 it is to be re-loaded with the contents of y 1 on the next positive clock edge. iii. If timer 0, it is to be decremented on the next clock edge. Connect timer to the 4 least significant bits of from_cu as follows from_cu[7:0]={ 4 H0, timer }. Answer for seed == 8 HAA is 16 H94EE start: load y1,#4 H2; load y1,#4 H7; 0002 C8 NOPC8; 0003 C8 NOPC8; 0004 C8 NOPC8; 0005 C8 NOPC8; 0006 C8 NOPC8; 0007 C8 NOPC8; 0008 C8 NOPC8; 0009 C8 NOPC8; 000A C8 NOPC8; 000B C8 NOPC8; 000C C8 NOPC8; 000D C8 NOPC8; 000E C8 NOPC8; 000F E0 jmp start; 00F0 org 16 HF0; 00F0 11 ISR: load x1, #4 H1; 00F1 12 load x1, #4 H2; 00F2 13 load x1, #4 H3; 00F3 14 load x1, #4 H4; 00F4 15 load x1, #4 H5; 00F5 16 load x1, #4 H6; 00F6 17 load x1, #4 H7; 00F7 18 load x1, #4 H8; 00F8 19 load x1, #4 H9; 00F9 1A load x1, #4 HA; 00FA 1B load x1, #4 HB; 00FB DF NOPDF ISR F0H 7
8 (b) When timer has value 4 H1 it is to be interpreted as an interrupt and that interrupt has interrupt vector 8 HF0. NOPDF is to be used as the return from interrupt instruction. If a jump instruction is interrupted then the return from interrupt should be the destination of the jump. If a conditional jump is interrupted the return from interrupt should be to the next instruction if the zero flag is 1 and to the destination of the jump if the zero flag is 0. In a nutshell, the return address should be the pm_address calculated for the instruction in the ir at the time the interrupt is generated. The microprocessor hardware must be modified so that the interrupt service routine can not be interrupted. That is to say if timer == 4 H1 while any instruction in the interrupt service routine, which includes the return-from-interrupt instruction, is in the instruction register the interrupt is ignored. The hex file and the listing for this part are the same as those for 6a. Answer for seed == 8 HAA is 16 H664F 8
9 7. Modify your microprocessor to include a 8-word by 8-bit stack. NOPDF is to push PC onto the stack and NOPC8 is to pop the stack into an 8-bit register called pop_reg. The register pop_reg must be synchronously cleared by sync_reset. The registers that control the stack should also be initialized with sync_reset. 9 Connect pop_reg to from_ps so that the test bench can verify the operation. Answer for seed == 8 HAA is 16 H4C4E Listing for question F start: load x1,#4 HF; TOS should be 8 H DF NOPDF; push pc: TOS = 8 H1 after push 0002 DF NOPDF; push pc: TOS = 8 H2 after push 0003 DF NOPDF; push pc: TOS = 8 H3 after push 0004 DF NOPDF; push pc: TOS = 8 H4 after push load x1,#4 H0; 0006 C8 NOPC8; pop: pop_reg gets 8 H4 ; TOS = 8 H3 after pop 0007 C8 NOPC8; pop: pop_reg gets 8 H C8 NOPC8; pop: pop_reg gets 8 H C8 NOPC8; pop: pop_reg gets 8 H1 000A E1 jmp done; 0010 E1 done: jmp done; trap here done 10H
10 8. Modify your microprocessor to implement a zero overhead do while y 0 < y 1 loop. The roles of the variables and registers involved are modified/simplified to facilitate implementation in the exam environment. The following simplifications are made: (a) The loop length will be the constant 8 H4 (b) The test, which is made while the last instruction in the do-while loop is in the instruction register, is to see if the contents of register y 0 is less than the contents of register y 1. If y 0 < y 1 is true, the next instruction executed is the first instruction in the do-while loop. If y 0 y 1, then the next instruction executed is the instruction following the last instruction in the loop. (c) The first instruction in the loop is the instruction that follows NOPCF. Answer for seed == 8 HAA is 16 H74FC Listing for question F start: load x0, #4 HF; x0 = load y0, #4 H1; load y1, #4 H4; 0003 E1 jmp loop1; 0010 CF loop1: NOPCF; while loop starts at next instruction 0011 CA add x0, y1; first instr in the loop: r = y C mov y1,r; decrement y load x1, #4 H3; load x1, #4 H4; last instruction in the loop 0015 E2 jmp done; at this point y1= align 0020 E2 done: jmp done; done 20H loop1 10H 10
11 9. Modify your microprocessor to extend the size of program memory to 1024 words. Of course the memory will have 10 address bits, which means a bigger program counter will have to be used. Name this bigger program counter pc_big. All instructions, except the jump and conditional jump instructions work in exactly the same way. The target address of a jump instruction will be 10 bits with the most significant 4 bits being the argument of the jump instruction (i.e. the least significant 4 bits in the ir) and the least significant 6 bits being 6 H0. A conditional jump instruction, if successful, executes a jump to the address where the most significant 2-bits are 2 H0, the next 4-bits are the argument of the jump instruction and the least significant 4-bits are 4 H0. 11 The 10 bit pc_big is sent to the test bench in two segments: First, the least significant 8 bits of pc_big are connected to the 8-bit pc, which is a signal in the port list of the program sequencer, i.e. pc = pc_big[7 : 0]. Second the most significant 8 bits of pc_big are connected to from_ps, i.e. from_ps = pc_big[9 : 2]. The program memory file for this question is called big_program_memory_q9.hex. Remember that port list for the microprocessor has an 8-bit output that channels pm_address to the test bench. Connect the least significant 8 bits of the 10-bit program memory address to this channel. The answer for seed == 8 HAA: is 16 HBCD3 Listing for question C0 start: neg x0; r = 0; 0001 F1 jnz step1; don t jump 0002 C7 com x0; r = F 0003 F1 jnz step1; jump 0010 E3 step1: jmp 8 H30; jump to step 2 00C0 org 8 HC0 00C0 E8 step2: jmp 8 H80; Jump to 10 H200; 0200 E8 step3: jmp 8 H80; Jump to 10 H200; step3 200H step2 C0H step1 10H
12 10. Modify your microprocessor to implement a zero-overhead loop with a 4 bit loop count register called loop_count. The register loop_count must be built so that it is synchronously cleared with sync_reset and loaded by the load y 1 instruction. The load y 1 instruction also loads y 1 as it did before. The loop begins on the instruction after the load loop_count instruction, which shows up in the listing as a load y 1 instruction. The loop will be executed one more time than the value written to loop_count by the load loop_count instruction. That is to say the value in loop_count upon entering the loop is the number of times the execution of the loop will be repeated. 12 The length of the loop is fixed at 3 instructions. Make from_ps = { 4 H0, loop_count }. NOTE: loop_count is only written by a load y1, not by a move to y1. Also note from the listing that loop_count is not written by an instruction inside the loop. Answer for seed == 8 HAA is 16 H883D Listing for question start: load i,#4 H1; load x1,#4 H1; load y1,#4 H3; this is a load loop_count instruction 0003 DA add x1,y1; first instruction in the loop C mov y1,r; 0005 BC mov dm,r; last instruction in the loop 0006 E1 jmp done; 0010 E1 done: jmp done; done 10H
13 11. Modify your microprocessor to make NOPD8 a wait for two clock cycles. I.e. That is NOPD8 should be in the instruction register for 3 clock cycles and the instruction that follows NOPD8 is to be executed on the third clock edge after NOPD8 is executed for the first time. 13 The instruction register should hold NOPD8 while waiting and reg_enables[4] should be 1 b1 while NOPD8 is in the instruction register. The pc and should not change so that it is the address of NOPD8 while waiting. pm_address should point to the instruction that follows the NOPD8 that is in the instruction decoder. Note that a NOPD8 could follow a NOPD8 and both should cause a wait of two clock cycles. Answer for seed == 8 HAA is 16 HC start: load x1,#4 H1; 0001 D8 NOPD8; wait two clock cycles load x1,#4 H2; 0003 D8 NOPD8; wait two clock cycles 0004 D8 NOPD8; wait two more clock cycles load x1,#4 H3; 0006 E1 jmp done; 0010 E1 done: jmp done; done 10H
14 12. Modify your microprocessor to make the jump to 8 H00 instruction a two word instruction with the second word being the 8-bit jump address. 14 When the second word of the instruction is in the instruction register all the register enables must be 1 b0 regardless of that instruction. Answer for seed == 8 HAA is 16 H0E85 Listing for question start: load o_reg, #4 H0; 0001 E0 jmp 8 H00; first of two bytes 0002 C8 NOPC8; jump to 8 HC8 00C8 org 8 HC8 00C8 C8 loop1: NOPC8; 00C9 41 load o_reg, #4 H1; 00CA 40 load o_reg, #4 H0; 00CB ED jmp loop2; 00D0 align 00D0 E0 loop2: jmp 8 H00; first byte 00D1 C8 NOPC8; jump to loop1 loop2 D0H loop1 C8H
15 13. Modify your micro so that NOPC8 toggles a flip/flop called alternate_function. The flip/flop is to be cleared by sync_reset. Change the computational unit to use a different set of ALU functions when alternate_function is 1 b1. Seven of the eight alternate ALU instructions are to be no - operations with the functionality of NOPD8. The other alternate ALU instruction, which is the ALU instruction for ALU function field value 3 H1, is to perform an accumulation of a difference and is given by r = x y + r. The zero flag is still 1 b1 if and only if r == 0. Answer for seed == 8 HAA is 16 HE1E3 Listing for question org 16 H start: load x0,#4 H3; load y0,#4 H2; 0002 C1 sub x0,y0; r=x0-y0= C8 NOPC8; enter alternate ALU mode 0004 C2 add x0,y0; should be a no-op 0005 C1 sub x0,y0; accum diff; r = x0-y0+r= C1 sub x0,y0; accum diff; r = x0-y0+r= D0 neg x1; should be a no-op r = C mov x1,r; 0009 C8 NOPC8; end normal ALU mode 000A C1 sub x0,y0; r=x0-y0=1 000B C8 NOPC8; alternate mode 000C C8 NOPC8; back to normal 000D C0 neg x0; r=d 000E E1 jmp done; 0010 E1 done: jmp done; done 10H 15
CME341 Dec. 16, 2014 Final Exam
1 CME341 Dec. 16, 2014 Final Exam Time: 3.0 hours, Text Books, Notes and Computer Files Only NO CELL PHONES or LAPTOPS All questions are independent. Each assumes you are starting with the microprocessor
More informationCME341 Dec. 9, 2013 Final Exam
1 CME341 Dec. 9, 2013 Final Exam Time: 3.0 hours, Text Books, Notes and Computer Files Only NO CELL PHONES or LAPTOPS All questions are independent. microprocessor. Each assumes you are starting with the
More informationCME341 Preamble for the Final Exam. About the Final Exam. CME341 Preamble for Final Exam 1
CME341 Preamble for Final Exam 1 About the Final Exam CME341 Preamble for the Final Exam The exam will start in the classroom assigned on the exam schedule. Students will be given the exam booklet at the
More informationEKT222 Miroprocessor Systems Lab 5
LAB 5: Interrupts Objectives: 1) Ability to define interrupt in 8085 microprocessor 2) Ability to understanding the interrupt structure in the 8085 microprocessor 3) Ability to create programs using the
More informationSN8F5000 Family Instruction Set
SONiX Technology Co., Ltd. 8051-based Microcontroller 1 Overview SN8F5000 is 8051 Flash Type microcontroller supports comprehensive assembly instructions and which are fully compatible with standard 8051.
More informationCPU: SOFTWARE ARCHITECTURE INSTRUCTION SET (PART
General Introduction CPU: SOFTWARE ARCHITECTURE INSTRUCTION SET (PART 1) General Introduction (1/5): On Instructions Instruction operate with data or with the flow of the program The following information
More informationMicrocomputer Architecture and Programming
IUST-EE (Chapter 1) Microcomputer Architecture and Programming 1 Outline Basic Blocks of Microcomputer Typical Microcomputer Architecture The Single-Chip Microprocessor Microprocessor vs. Microcontroller
More informationDelhi Noida Bhopal Hyderabad Jaipur Lucknow Indore Pune Bhubaneswar Kolkata Patna Web: Ph:
Serial :. PT_EE-EC_A_Microprocessor_968 Delhi Noida Bhopal Hyderabad Jaipur Lucknow Indore Pune Bhubaneswar Kolkata Patna Web: E-mail: info@madeeasy.in Ph: -452462 CLASS TEST 28-9 Subject : Microprocessors
More informationMicro computer Organization
Micro computer Organization I Base Basic Components CPU SYSTEM BUSES VDD CLK RESET 1 MPU vs MCU Microprocessor Unit (MPU) CPU (called Microprocessor) is a die All components external to die Basically on
More informationPERIPHERAL INTERFACING Rev. 1.0
This work is licensed under the Creative Commons Attribution-NonCommercial-Share Alike 2.5 India License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/2.5/in/deed.en
More informationTYPES OF INTERRUPTS: -
There are 3 types of interrupts. TYPES OF INTERRUPTS: - External Interrupts. Internal Interrupts. Software interrupts. Hardware Interrupts (1) External interrupts come from I/O devices, from a timing device
More informationEE431 April 6, 2009 Midterm Material on Assignments 6 to 10
EE431 April 6, 2009 midterm 1 EE431 April 6, 2009 Midterm Material on Assignments 6 to 10 Date: Monday April 6, 2009 Time = 2 hours Text Books, Notes and Computer Files Only NO CELL PHONES or LAPTOPS Preamble
More informationCC411: Introduction To Microprocessors
CC411: Introduction To Microprocessors OBJECTIVES this chapter enables the student to: Describe the Intel family of microprocessors from 8085 to Pentium. In terms of bus size, physical memory & special
More information(2) Explain the addressing mode of OR What do you mean by addressing mode? Explain diff. addressing mode for 8085 with examples.
(1) Explain instruction format and Opcode format of 8085 μp with example. OR With help of examples, explain the formation of opcodes of 8085 OR What is an instruction? List type of instruction based on
More information8051 Overview and Instruction Set
8051 Overview and Instruction Set Curtis A. Nelson Engr 355 1 Microprocessors vs. Microcontrollers Microprocessors are single-chip CPUs used in microcomputers Microcontrollers and microprocessors are different
More informationWilliam Stallings Computer Organization and Architecture
William Stallings Computer Organization and Architecture Chapter 16 Control Unit Operations Rev. 3.2 (2009-10) by Enrico Nardelli 16-1 Execution of the Instruction Cycle It has many elementary phases,
More informationArchitecture & Instruction set of 8085 Microprocessor and 8051 Micro Controller
of 8085 microprocessor 8085 is pronounced as "eighty-eighty-five" microprocessor. It is an 8-bit microprocessor designed by Intel in 1977 using NMOS technology. It has the following configuration 8-bit
More informationFull file at
Chapter Two DATA MANIPULATION Formatted Chapter Summary This chapter introduces the role of a computer's CPU. It describes the machine cycle and the various operations (or, and, exclusive or, add, shift,
More informationLIST OF PROGRAMS. Prg. Name of the Program. 1 Study of Pin Diagram of Study of Architecture of Study of 8085 Kit.
LIST OF PROGRAMS Prg. Name of the Program No. 1 Study of Pin Diagram of 8085 2 Study of Architecture of 8085 3 Study of 8085 Kit 4 Reverse Order 5 Exchange of memory blocks 6 Absolute Difference 7 Even
More informationInstruction Set Instruction set of 8085 can be classified in following groups: Data Transfer Instructions These instructions can perform data transfer operations between Registers of 8085 e.g. MOV 8085
More informationDelhi Noida Bhopal Hyderabad Jaipur Lucknow Indore Pune Bhubaneswar Kolkata Patna Web: Ph:
Serial : 01. ND_EE_NW_Microprocessors_150718 Delhi Noida Bhopal Hyderabad Jaipur Lucknow Indore Pune Bhubaneswar Kolkata Patna Web: E-mail: info@madeeasy.in Ph: 011-45124612 CLASS TEST 2018-19 ELECTRICAL
More informationCode segment Stack segment
Registers Most of the registers contain data/instruction offsets within 64 KB memory segment. There are four different 64 KB segments for instructions, stack, data and extra data. To specify where in 1
More informationSPRING TERM BM 310E MICROPROCESSORS LABORATORY PRELIMINARY STUDY
BACKGROUND 8086 CPU has 8 general purpose registers listed below: AX - the accumulator register (divided into AH / AL): 1. Generates shortest machine code 2. Arithmetic, logic and data transfer 3. One
More informationMAHALAKSHMI ENGINEERING COLLEGE TIRUCHIRAPALLI
MAHALAKSHMI ENGINEERING COLLEGE TIRUCHIRAPALLI-621213. QUESTION BANK DEPARTMENT: EEE SUB CODE: EE2324 YR/ SEM:III/ VI SUB NAME: MICROPROCESSORS & MICROCONTROLLERS UNIT 2- PROGRAMMING OF 8085 MICROPROCESSORS
More informationE3940 Microprocessor Systems Laboratory. Introduction to the Z80
E3940 Microprocessor Systems Laboratory Introduction to the Z80 Andrew T. Campbell comet.columbia.edu/~campbell campbell@comet.columbia.edu E3940 Microprocessor Systems Laboratory Page 1 Z80 Laboratory
More information9/25/ Software & Hardware Architecture
8086 Software & Hardware Architecture 1 INTRODUCTION It is a multipurpose programmable clock drive register based integrated electronic device, that reads binary instructions from a storage device called
More information8086 INTERNAL ARCHITECTURE
8086 INTERNAL ARCHITECTURE Segment 2 Intel 8086 Microprocessor The 8086 CPU is divided into two independent functional parts: a) The Bus interface unit (BIU) b) Execution Unit (EU) Dividing the work between
More informationCHAPTER 8: Central Processing Unit (CPU)
CS 224: Computer Organization S.KHABET CHAPTER 8: Central Processing Unit (CPU) Outline Introduction General Register Organization Stack Organization Instruction Formats Addressing Modes 1 Major Components
More informationAdvanced Parallel Architecture Lesson 3. Annalisa Massini /2015
Advanced Parallel Architecture Lesson 3 Annalisa Massini - 2014/2015 Von Neumann Architecture 2 Summary of the traditional computer architecture: Von Neumann architecture http://williamstallings.com/coa/coa7e.html
More informationAssembly Language Programming of 8085
Assembly Language Programming of 8085 Topics 1. Introduction 2. Programming model of 8085 3. Instruction set of 8085 4. Example Programs 5. Addressing modes of 8085 6. Instruction & Data Formats of 8085
More informationChapter 9. Programming Framework
Chapter 9 Programming Framework Lesson 1 Registers Registers Pointers Accumulator Status General Purpose Outline CPU Registers Examples 8-bitA (Accumulator) Register 8-bit B Register 8-bitPSW (Processor
More informationINSTRUCTION SET OF 8085
INSTRUCTION SET OF 8085 Instruction Set of 8085 An instruction is a binary pattern designed inside a microprocessor to perform a specific function. The entire group of instructions that a microprocessor
More informationMicroprocessors 1. The 8051 Instruction Set. Microprocessors 1 1. Msc. Ivan A. Escobar Broitman
Microprocessors 1 The 8051 Instruction Set Microprocessors 1 1 Instruction Groups The 8051 has 255 instructions Every 8-bit opcode from 00 to FF is used except for A5. The instructions are grouped into
More informationMicrocontroller Intel [Instruction Set]
Microcontroller Intel 8051 [Instruction Set] Structure of Assembly Language [ label: ] mnemonic [operands] [ ;comment ] Example: MOV R1, #25H ; load data 25H into R1 2 8051 Assembly Language Registers
More informationDarshan Institute of Engineering & Technology for Diploma Studies Unit - 1
Darshan Institute of Engineering & Technology for Diploma Studies Unit - 1 1. Draw and explain 4 bit binary arithmetic or adder circuit diagram. A binary parallel adder is digital function that produces
More informationMicroprocessor Architecture
Microprocessor - 8085 Architecture 8085 is pronounced as "eighty-eighty-five" microprocessor. It is an 8-bit microprocessor designed by Intel in 1977 using NMOS technology. It has the following configuration
More informationPractical Malware Analysis
Practical Malware Analysis Ch 4: A Crash Course in x86 Disassembly Revised 1-16-7 Basic Techniques Basic static analysis Looks at malware from the outside Basic dynamic analysis Only shows you how the
More informationCPU Design John D. Carpinelli, All Rights Reserved 1
CPU Design 1997 John D. Carpinelli, All Rights Reserved 1 Outline Register organization ALU design Stacks Instruction formats and types Addressing modes 1997 John D. Carpinelli, All Rights Reserved 2 We
More informationMC68705P3 Bootstrap ROM
MC68705P3 Bootstrap ROM ;This is a listing of the Bootstrap ROM which resides in Motorola's MC68705P3 single chip ;micros. Its sole purpose is to program its own EPROM by copying the data from an external
More informationAssembly Language Programming of 8085
Assembly Language Programming of 8085 1. Introduction A microprocessor executes instructions given by the user Instructions should be in a language known to the microprocessor Microprocessor understands
More informationicroprocessor istory of Microprocessor ntel 8086:
Microprocessor A microprocessor is an electronic device which computes on the given input similar to CPU of a computer. It is made by fabricating millions (or billions) of transistors on a single chip.
More informationMidterm Exam #2 Answer Key
Midterm Exam #2 Answer Key Name: Student ID #: I have read and understand Washington State University s policy on academic dishonesty and cheating YOU Signed: Problem 1) Consider the following fragment
More informationSubject Code: Model Answer Page No: /25
Important Instructions to examiners: 1) The answers should be examined by key words and not as word-to-word as given in the model answer scheme. 2) The model answer and the answer written by candidate
More informationIntel 8086: Instruction Set
IUST-EE (Chapter 6) Intel 8086: Instruction Set 1 Outline Instruction Set Data Transfer Instructions Arithmetic Instructions Bit Manipulation Instructions String Instructions Unconditional Transfer Instruction
More informationEXPERIMENT NO. 1 THE MKT 8085 MICROPROCESSOR TRAINER
OBJECT: EXPERIMENT NO. 1 THE MKT 8085 MICROPROCESSOR TRAINER To understand the structure and operating instruction of the microprocessor trainer. INTRODUCTION: The MKT 8085 is a single-board microcomputer,
More information5-1 Instruction Codes
Chapter 5: Lo ai Tawalbeh Basic Computer Organization and Design 5-1 Instruction Codes The Internal organization of a digital system is defined by the sequence of microoperations it performs on data stored
More information4. Specifications and Additional Information
4. Specifications and Additional Information AGX52004-1.0 8B/10B Code This section provides information about the data and control codes for Arria GX devices. Code Notation The 8B/10B data and control
More informationDigital System Design Using Verilog. - Processing Unit Design
Digital System Design Using Verilog - Processing Unit Design 1.1 CPU BASICS A typical CPU has three major components: (1) Register set, (2) Arithmetic logic unit (ALU), and (3) Control unit (CU) The register
More informationPractical Course File For
Practical Course File For Microprocessor (IT 473) B.Tech (IT) IV-SEM Department of IT University Institute of Engineering & Technology Panjab University, Chandigarh Page 1 INTRODUCTION... 4 EXPERIMENT-1:
More informationCG2007 Microprocessor systems.
CG2007 Microprocessor systems Tutorial 1 Semester 2 AY 2011-12 Ganesh Iyer ganesh.vigneswara@gmail.com http://ganeshniyer.com About Me I have 3 years of Industry work experience in Bangalore, India. I
More informationMicrocontroller. Instruction set of 8051
UNIT 2: Addressing Modes and Operations: Introduction, Addressing modes, External data Moves, Code Memory, Read Only Data Moves / Indexed Addressing mode, PUSH and POP Opcodes, Data exchanges, Example
More informationPERIPHERAL INTERFACING Rev. 1.0
This work is licensed under the Creative Commons Attribution-NonCommercial-Share Alike 2.5 India License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/2.5/in/deed.en
More informationDelhi Noida Bhopal Hyderabad Jaipur Lucknow Indore Pune Bhubaneswar Kolkata Patna Web: Ph:
Serial : LS2_EE_S_Microprocessors_2688 Delhi Noida Bhopal Hyderabad Jaipur Lucknow Indore Pune Bhubaneswar Kolkata Patna Web: E-mail: info@madeeasy.in Ph: -452462 CLASS TEST 28-9 ELECTRICAL ENGINEERING
More informationUNIT-II. Part-2: CENTRAL PROCESSING UNIT
Page1 UNIT-II Part-2: CENTRAL PROCESSING UNIT Stack Organization Instruction Formats Addressing Modes Data Transfer And Manipulation Program Control Reduced Instruction Set Computer (RISC) Introduction:
More informationDescription of the Simulator
Description of the Simulator The simulator includes a small sub-set of the full instruction set normally found with this style of processor. It includes advanced instructions such as CALL, RET, INT and
More informationMAHARASHTRA STATE BOARD OF TECHNICAL EDUCATION (Autonomous) (ISO/IEC Certified) MODEL ANSWER
MODEL ANSWER SUMMER 17 EXAMINATION Subject Title: Microprocessor Subject Code: 17443 I m p o r t a n t I n s t r u c t i o n s t o e x a m i n e r s : 1) The answers should be examined by key words and
More informationadministrivia today start assembly probably won t finish all these slides Assignment 4 due tomorrow any questions?
administrivia today start assembly probably won t finish all these slides Assignment 4 due tomorrow any questions? exam on Wednesday today s material not on the exam 1 Assembly Assembly is programming
More informationCHAPTER 5 : Introduction to Intel 8085 Microprocessor Hardware BENG 2223 MICROPROCESSOR TECHNOLOGY
CHAPTER 5 : Introduction to Intel 8085 Hardware BENG 2223 MICROPROCESSOR TECHNOLOGY The 8085A(commonly known as the 8085) : Was first introduced in March 1976 is an 8-bit microprocessor with 16-bit address
More information8085 INSTRUCTION SET INSTRUCTION DETAILS
8085 INSTRUCTION SET INSTRUCTION DETAILS DATA TRANSFER INSTRUCTIONS MOV Rd, Rs Copy from source to destination This instruction copies the contents of the source register Rs into the destination register
More informationORG ; TWO. Assembly Language Programming
Dec 2 Hex 2 Bin 00000010 ORG ; TWO Assembly Language Programming OBJECTIVES this chapter enables the student to: Explain the difference between Assembly language instructions and pseudo-instructions. Identify
More informationInterrupt is a process where an external device can get the attention of the microprocessor. Interrupts can be classified into two types:
8085 INTERRUPTS 1 INTERRUPTS Interrupt is a process where an external device can get the attention of the microprocessor. The process starts from the I/O device The process is asynchronous. Classification
More informationCPU. Fall 2003 CSE 207 Digital Design Project #4 R0 R1 R2 R3 R4 R5 R6 R7 PC STATUS IR. Control Logic RAM MAR MDR. Internal Processor Bus
http://www.engr.uconn.edu/~barry/cse207/fa03/project4.pdf Page 1 of 16 Fall 2003 CSE 207 Digital Design Project #4 Background Microprocessors are increasingly common in every day devices. Desktop computers
More information8051 Microcontroller
8051 Microcontroller EE4380 Fall 2001 Pari vallal Kannan Center for Integrated Circuits and Systems University of Texas at Dallas 8051 Architecture Programmer s View Register Set Instruction Set Memory
More informationGrundlagen Microcontroller Processor Core. Günther Gridling Bettina Weiss
Grundlagen Microcontroller Processor Core Günther Gridling Bettina Weiss 1 Processor Core Architecture Instruction Set Lecture Overview 2 Processor Core Architecture Computes things > ALU (Arithmetic Logic
More information8085 Microprocessor Architecture and Memory Interfacing. Microprocessor and Microcontroller Interfacing
8085 Microprocessor Architecture and Memory 1 Points to be Discussed 8085 Microprocessor 8085 Microprocessor (CPU) Block Diagram Control & Status Signals Interrupt Signals 8085 Microprocessor Signal Flow
More informationPESIT Bangalore South Campus
INTERNAL ASSESSMENT TEST 2 Date : 02/04/2018 Max Marks: 40 Subject & Code : Microprocessor (15CS44) Section : IV A and B Name of faculty: Deepti.C Time : 8:30 am-10:00 am Note: Note: Answer any five complete
More information8051 Microcontroller Assembly Programming
8051 Microcontroller Assembly Programming EE4380 Fall 2002 Class 3 Pari vallal Kannan Center for Integrated Circuits and Systems University of Texas at Dallas Topics Machine code 8051 Addressing Modes
More informationAssembly Language programming (3)
EEE3410 Microcontroller Applications LABORATORY Experiment 3 Assembly Language programming (3) Name Class Date Class No. Marks Conditional Program Branching and Subroutine Call in 8051 Objectives To learn
More informationModule 3 Instruction Set Architecture (ISA)
Module 3 Instruction Set Architecture (ISA) I S A L E V E L E L E M E N T S O F I N S T R U C T I O N S I N S T R U C T I O N S T Y P E S N U M B E R O F A D D R E S S E S R E G I S T E R S T Y P E S O
More informationCHAPTER 5 Basic Organization and Design Outline Instruction Codes Computer Registers Computer Instructions Timing and Control Instruction Cycle
CS 224: Computer Organization S.KHABET CHAPTER 5 Basic Organization and Design Outline Instruction Codes Computer Registers Computer Instructions Timing and Control Instruction Cycle Memory Reference Instructions
More informationMicroprocessor. By Mrs. R.P.Chaudhari Mrs.P.S.Patil
Microprocessor By Mrs. R.P.Chaudhari Mrs.P.S.Patil Chapter 1 Basics of Microprocessor CO-Draw Architecture Of 8085 Salient Features of 8085 It is a 8 bit microprocessor. It is manufactured with N-MOS technology.
More informationSection 002. Read this before starting!
Points missed: Student's Name: _ Total score: /100 points East Tennessee State University -- Department of Computer and Information Sciences CSCI 2150 Computer Organization Final Exam for Fall Semester,
More informationSTRUCTURE OF DESKTOP COMPUTERS
Page no: 1 UNIT 1 STRUCTURE OF DESKTOP COMPUTERS The desktop computers are the computers which are usually found on a home or office desk. They consist of processing unit, storage unit, visual display
More informationControl Transfer Instructions Jump, Loop, and Call. ECE473/573 Microprocessor System Design, Dr. Shiue
Control Transfer Instructions Jump, Loop, and Call 1 Jump Instructions JZ label ; Jump if A=0 JNZ label ; Jump if A!=0 DJNZ reg, label ; Decrement and Jump if A (or reg.)!=0 CJNE A, byte ; Compare and
More informationMICROPROCESSOR PROGRAMMING AND SYSTEM DESIGN
MICROPROCESSOR PROGRAMMING AND SYSTEM DESIGN ROAD MAP SDK-86 Intel 8086 Features 8086 Block Diagram 8086 Architecture Bus Interface Unit Execution Unit 8086 Architecture 8086 Programmer s Model Flag Register
More informationEC2304-MICROPROCESSOR AND MICROCONROLLERS 2 marks questions and answers UNIT-I
EC2304-MICROPROCESSOR AND MICROCONROLLERS 2 marks questions and answers 1. Define microprocessors? UNIT-I A semiconductor device(integrated circuit) manufactured by using the LSI technique. It includes
More informationCHAPTER ASSEMBLY LANGUAGE PROGRAMMING
CHAPTER 2 8051 ASSEMBLY LANGUAGE PROGRAMMING Registers Register are used to store information temporarily: A byte of data to be processed An address pointing to the data to be fetched The vast majority
More informationMICROCONTROLLER AND PLC LAB-436 SEMESTER-5
MICROCONTROLLER AND PLC LAB-436 SEMESTER-5 Exp:1 STUDY OF MICROCONTROLLER 8051 To study the microcontroller and familiarize the 8051microcontroller kit Theory:- A Microcontroller consists of a powerful
More informationCS401 - Computer Architecture and Assembly Language Programming Glossary By
CS401 - Computer Architecture and Assembly Language Programming Glossary By absolute address : A virtual (not physical) address within the process address space that is computed as an absolute number.
More informationChapter 17. Microprogrammed Control. Yonsei University
Chapter 17 Microprogrammed Control Contents Basic Concepts Microinstruction Sequencing Microinstruction Execution TI 8800 Applications of Microprogramming 17-2 Introduction Basic Concepts An alternative
More informationChapter 12. Selected Pentium Instructions
Chapter 12 Selected Pentium Instructions 1 2 Chapter 12 12 1 Carry flag indicates out-of-range error for unsigned operations. Chapter 12 3 12 2 Overflow flag indicates out-of-range error for signed operations.
More informationIntroduction to Computers - Chapter 4
Introduction to Computers - Chapter 4 Since the invention of the transistor and the first digital computer of the 1940s, computers have been increasing in complexity and performance; however, their overall
More informationComputer Organization and Architecture, Pt. 2
Computer Organization and Architecture, Pt. 2 Charles Abzug, Ph.D. Department of Computer Science James Madison University Harrisonburg, VA 22807 Voice Phone: 540-568-8746, E-mail: CharlesAbzug@ACM.org
More informationIts Assembly language programming
8085 Architecture & Its Assembly language programming Dr A Sahu Dept of Computer Science & Engineering IIT Guwahati 8085 Era and Features 8085 Outline Block diagram (Data Path) Bus Structure Register Structure
More informationCOSC 243. Instruction Sets And Addressing Modes. Lecture 7&8 Instruction Sets and Addressing Modes. COSC 243 (Computer Architecture)
COSC 243 Instruction Sets And Addressing Modes 1 Overview This Lecture Source Chapters 12 & 13 (10 th editition) Textbook uses x86 and ARM (we use 6502) Next 2 Lectures Assembly language programming 2
More informationDigital IP Cell 8-bit Microcontroller PE80
1. Description The is a Z80 compliant processor soft-macro - IP block that can be implemented in digital or mixed signal ASIC designs. The Z80 and its derivatives and clones make up one of the most commonly
More informationLecture-15 W-Z: Increment-Decrement Address Latch:
Lecture-15 W-Z: (W) and (Z) are two 8-bit temporary registers not accessible to the user. They are exclusively used for the internal operation by the microprocessor. These registers are used either to
More informationAdvanced Parallel Architecture Lesson 3. Annalisa Massini /2015
Advanced Parallel Architecture Lesson 3 Annalisa Massini - Von Neumann Architecture 2 Two lessons Summary of the traditional computer architecture Von Neumann architecture http://williamstallings.com/coa/coa7e.html
More informationUNIT 1 REFERENCE 1 PREPARED BY S.RAVINDRAKUMAR, LECT/ECE, CHETTINAD COLLEGE OF ENGG AND TECH, KARUR
UNIT 1 REFERENCE 1 PROGRAMMING THE 8085 DEVELOPMENT OF PROGRAM A program is a sequence of instructions written to tell a computer to perform a specific function. The instructions are selected from the
More information8085 Interrupts. Lecturer, CSE, AUST
8085 Interrupts CSE 307 - Microprocessors Mohd. Moinul Hoque, 1 Interrupts Interrupt is a process where an external device can get the attention of the microprocessor. The process starts from the I/O device
More informationExample Programs for 6502 Microprocessor Kit
Example Programs for 6502 Microprocessor Kit 0001 0000 0002 0000 GPIO1.EQU $8000 0003 0000 0004 0000 0005 0200.ORG $200 0006 0200 0007 0200 A5 00 LDA $0 0008 0202 8D 00 80 STA $GPIO1 0009 0205 00 BRK 0010
More informationInstruction set of 8085
Instruction set of 05 /23/2016 ptkarule@rediffmail.com 1 Instruction set of 05 Instruction set is divided into various groups depending on the operations performed: 1. Data transfer 2. rithmetic 3. Logical
More informationIntroduction to Assembly Language Programming (Instruction Set) 1/18/2011 1
Introduction to Assembly Language Programming (Instruction Set) 1/18/2011 1 High Level Language Compiler Assembly Language Assembler Machine Code Microprocessor Hardware 1/18/2011 2 8085A Instruction Set
More informationADVANCE MICROPROCESSOR & INTERFACING
VENUS INTERNATIONAL COLLEGE OF TECHNOLOGY Gandhinagar Department of Computer Enggineering ADVANCE MICROPROCESSOR & INTERFACING Name : Enroll no. : Class Year : 2014-15 : 5 th SEM C.E. VENUS INTERNATIONAL
More informationChapter 5. Computer Architecture Organization and Design. Computer System Architecture Database Lab, SANGJI University
Chapter 5. Computer Architecture Organization and Design Computer System Architecture Database Lab, SANGJI University Computer Architecture Organization and Design Instruction Codes Computer Registers
More informationIntel 8086 MICROPROCESSOR ARCHITECTURE
Intel 8086 MICROPROCESSOR ARCHITECTURE 1 Features It is a 16-bit μp. 8086 has a 20 bit address bus can access up to 2 20 memory locations (1 MB). It can support up to 64K I/O ports. It provides 14, 16
More informationDigital Blocks Semiconductor IP
Digital Blocks Semiconductor IP 805 Microcontroller General Description The Digital Blocks Microcontroller Verilog IP Core is complaint with the MCS 5 Instruction Set and contains standard 805 MCU peripherals,
More informationAdvanced Microprocessors
Advanced Microprocessors Notes #7 I/O Interfacing EE 467/567 Winter 2012 By Avinash Kodi IO.1 Background Materials Textbook: See Web Other: IA-32 Intel Architecture Software Developer s Manual Volume 1
More informationBasic Computer Organization - Designing your first computer. Acknowledgment: Most of the slides are adapted from Prof. Hyunsoo Yoon s slides.
Basic Computer Organization - Designing your first computer Acknowledgment: Most of the slides are adapted from Prof. Hyunsoo Yoon s slides. 1 This week- BASIC COMPUTER ORGANIZATION AND DESIGN Instruction
More informationProgramming Book Microcontroller Kit. Rev 3.0 January, Wichit Sirichote
Programming Book1 8051 Microcontroller Kit Rev 3.0 January, 016 016 Wichit Sirichote 1 Contents Overview...3 SAFTY INFORMATION...3 Tools...3 Experiment 1 Blinking LED...4 Experiment Binary number counting...9
More information