ITT430 – Microprocessor Assignment 2a Topic 3 Name: NURUL AIN BINTI AMIR Student ID: 2018683334 Group: M3CS2454A /35 marks Answer ALL Questions: TOPIC 3 1. What tells a computer what to do and where to get data? (1m) Program and microprocessor 2. What is a source code? (2m) Source code is the set of instructions and statements written by a programmer using a computer programming language. This code is later translated into machine language by a compiler. 3. What is the function of an assembler? (2m) Convert mnemonic operation codes to their machine language equivalent. Convert symbolic operands to their equivalent machine addresses. 4. What is an opcode? (2m) An opcode (operation code) is a code or a number that is placed inside the memory cell by the instruction pointer. 5. What is an operand? (2m) an operand is a term used to describe any object that is capable of being manipulated. For example, in "1 + 2" the "1" and "2" are the operands and the plus symbol is the operator. ITT430 – Microprocessor 6. List six groups of instructions in the 8088/8086 instruction set? (6m) Data transfer instructions Arithmetic instructions Logic instructions String manipulation instructions Control transfer instructions Processor control instructions 7. What is meant by an addressing mode? (2m) Addressing modes are an aspect of the instructions set architecture in most central processing unit (CPU) designs. An addressing mode specifies how to calculate the memory address of an operands using information held in registers and / or constants contained within the instruction or elsewhere. 8. List the addressing mode available on the 8088 (3m) Register operand addressing mode Immediate operand addressing mode Memory operand addressing mode 9. Name the memory operand addressing mode. (5m) Direct addressing mode Register indirect addressing mode Based addressing mode Indexed addressing mode Based-indexed addressing mode ITT430 – Microprocessor 10. Use the register contents shown to answer the following question. (10m) AX=0ACD BX=0180 CX=0000 DX=0000 SP=FFEE BP=0000 SI=021D DI=1111 DS=166A ES=146A SS=156A CS=136A IP=0101 For each instruction i) Determine the physical address of memory operand. ii) Determine the memory operand addressing mode. a) MOV AH, [BX][SI] + 1234H i. PA = DS & 0 + BX + SI + 1234H PA = 166A0H + 0180H + 021DH + 1234H PA = 17C71H ii. Based-indexed addressing mode b) SBB DL, [0200H] i. PA = DS & 0 + 0200H PA = 1660AH + 0200H PA = 168A0H ii. Direct addressing mode c) MOV BL, [BP] + 8954H i. PA = DS & 0 + BP + 8954H PA = 166A0H + 0000H + 8954H PA = 1EFF4H ii. Indexed register addressing mode ITT430 – Microprocessor d) MOV AL, [SI] + 1122H i. PA = DS & 0 + SI + 1122H PA = 166A0H + 021DH + 1122H PA = 179DFH ii. Indexed register addressing mode e) MOV AX, [BX] [DI] + 34H i. PA = DS & 0 + BX + DI + 34H PA = 166A0H + 0180H + 1111H + 34H PA = 17965H ii. Based-indexed addressing mode