Answered step by step
Verified Expert Solution
Question
1 Approved Answer
Suppose you come across the following binary microinstructions in the format described in class. Describe the micro-operations that each one executes. 0001 0001 1010 0000
Suppose you come across the following binary microinstructions in the format described in class. Describe the micro-operations that each one executes.
0001 0001 1010 0000 0011 0001 0000 0000
0011 0100 0001 0100 0000 0100 0001 0001
0000 0000 1101 0010 0010 0110 0010 1111
1100 1000 0001 0001 1001 0000 0000 1000
MICRO INTERPRETER FOR ASSEMBLY INSTRUCTIONS 0: mar=pc; rd; 1: pc pc +1; rd; 2: ir mbr, if n, goto 28; 3: tir Ishift (ir+ ir); if n, goto 19; 4: tir Ishift(tir); if n, goto 11; 5: alu tir, if n, goto 9; 6. mar -ir; rd; 7: rd; 8: ac = mbr; goto 0; 9: mar ir, mbr = ac, wr, 10: wr; goto 0; 11: alu tir, if n, goto 15; 12: mar- ir; rd; [main loop] increment pc] [save, decode mbr] [000x or 001x?] [0000 or 0001] [0000 = LODDI [0001 - STOD] [0010 or 0011?] [0010 = ADDD] 13: rd 14: ac mbr+ ac; goto 0; 15: mar -ir; rd; 16: ac= ac +1: rd; 17: a inv(mbr); 18: ac-ac + a; goto 0 19: tir-1shsift(tir); if n, goto 25; 20: alutir; if n then goto 23; 21: alu=ac; if n, goto 0; 22: pc band(ir,amask); goto 0; 23; alu - ac; if z, goto 22; 24: goto 0; 25: alu=tir, ifn, goto 27; 26: pc bandfir,amask); goto 0; 27: ac band(ir,amask); goto 0; 28: tirIshift(irtir); if n, goto 40; 29: tir Isift(tir); if n, goto 35; 30: alu tir, if n goto 33; 31: air +sp; 32: mar- a; rd; goto 7; 33: a ir+ sp; 34: mar a; mbr = ac: wr; goto 10; 35: alu-tir, if n, goto 38; 36: a ir+ sp; 37: mar a; rd; goto 13; 38: a ir +sp; 39: mar-a; rd; goto 16; 40: tir Ishift(tir); if n, goto 49; 41: alu = tir, if n, goto 44; 42: alu -ac; if n, goto 22; [0011 SUBD] Note: x-y x+1+ not y] [010x or 011x?] [0100 or 0101?] [0100 JPOS] [ perform jump] [0101-JZERI [ jump failed] 0110 or 0111?] [0110 JUMP] [011 1 = LOCO] [10xx or 11xx?] [100x or 111x?] [1000 or 1001?] [1000 LODL [1001 STOL [1010 or 1011?] [1010 ADDL] [1011 SUBL] [110x or 111x?] [1100 1101?] [1100 JNEG] MICRO INTERPRETER FOR ASSEMBLY INSTRUCTIONS 0: mar=pc; rd; 1: pc pc +1; rd; 2: ir mbr, if n, goto 28; 3: tir Ishift (ir+ ir); if n, goto 19; 4: tir Ishift(tir); if n, goto 11; 5: alu tir, if n, goto 9; 6. mar -ir; rd; 7: rd; 8: ac = mbr; goto 0; 9: mar ir, mbr = ac, wr, 10: wr; goto 0; 11: alu tir, if n, goto 15; 12: mar- ir; rd; [main loop] increment pc] [save, decode mbr] [000x or 001x?] [0000 or 0001] [0000 = LODDI [0001 - STOD] [0010 or 0011?] [0010 = ADDD] 13: rd 14: ac mbr+ ac; goto 0; 15: mar -ir; rd; 16: ac= ac +1: rd; 17: a inv(mbr); 18: ac-ac + a; goto 0 19: tir-1shsift(tir); if n, goto 25; 20: alutir; if n then goto 23; 21: alu=ac; if n, goto 0; 22: pc band(ir,amask); goto 0; 23; alu - ac; if z, goto 22; 24: goto 0; 25: alu=tir, ifn, goto 27; 26: pc bandfir,amask); goto 0; 27: ac band(ir,amask); goto 0; 28: tirIshift(irtir); if n, goto 40; 29: tir Isift(tir); if n, goto 35; 30: alu tir, if n goto 33; 31: air +sp; 32: mar- a; rd; goto 7; 33: a ir+ sp; 34: mar a; mbr = ac: wr; goto 10; 35: alu-tir, if n, goto 38; 36: a ir+ sp; 37: mar a; rd; goto 13; 38: a ir +sp; 39: mar-a; rd; goto 16; 40: tir Ishift(tir); if n, goto 49; 41: alu = tir, if n, goto 44; 42: alu -ac; if n, goto 22; [0011 SUBD] Note: x-y x+1+ not y] [010x or 011x?] [0100 or 0101?] [0100 JPOS] [ perform jump] [0101-JZERI [ jump failed] 0110 or 0111?] [0110 JUMP] [011 1 = LOCO] [10xx or 11xx?] [100x or 111x?] [1000 or 1001?] [1000 LODL [1001 STOL [1010 or 1011?] [1010 ADDL] [1011 SUBL] [110x or 111x?] [1100 1101?] [1100 JNEG]Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started