i need this code to work by Calculate all the single-digit Fibonacci numbers in order Start with the first 2 values in the sequence (0, 1) Calculate the next value by adding together the two largest values Print each number in the sequence With a comma and space after each No comma after the last number Use LC-3 I/O device to print number, commas, and spaces NO numbers printed using Trap Routine should check ddr, dsr , load and store modify the code to work using ALL Guidelines Fib2 the largest Fibonacci number calculates so far ; Fib1 the previous Fibonacci number ; ; For each Calculation: ; Fib2 = Fib1 + Fib2 ; Fib1 = previous Fib2 ; R0 used for PUTS messages ; R1 contains current Fib1 value ; R2 contains current Fib2 value ; R6 is loop counter for main loop ; R7 is not used by this program. Used by Simulate for TRAP and Subroutines .ORIG x3000 Setup LEA R0, Info PUTS ADD R6, R6, #5; Init Main Loop counter (loop 5 times) ;Print first 2 Fib values before starting ;----- Your Code Here -----; ADD R1, R1, #0 ; R1 initialized to 0 ADD R2, R2, #1 ; R2 initialized to 1 ;----- End Your Code Here -----; ;Loop and call subroutines to calculate each subsequent value in the sequence ;Exit the loop once all single-digit values in the sequence have been printed MainLoop ;----- Your Code Here -----; AND R7, R7, #0 ; clear R7 ADD R7, R7, R2 ; copy value of R2 to R7 JSR calcNextFib ; call subroutine to calculate next fibonacci number JSR printNum ; print the number JSR printCommaSpace ; print comma and space AND R2, R2, #0 ; clear R2 ADD R2, R2, R7 ; restore value of R2 from R7 ADD R6, R6, #-1 ; reduce loop counter BRp MainLoop ; continue the loop if R6 is not yet 0 ;----- End Your Code Here -----; Done HALT ;----------------------------------- ;Subroutines ;----------------------------------- ;Uses R1 and R2 to calc next value in Fibonacci sequence ;When complete, Fib2 (R2) will contain the new Fib number ;and Fib1 (R1) will contain the previous value of Fib2 (R2) calcNextFib ;----- Your Code Here -----; ADD R7, R2, R1 ; R7 will contain the sum of R1 and R2 AND R1, R1, #0 ; clear R1 ADD R1, R1, R2 ; copy value of R2 to R1 AND R2, R2, #0 ; clear R2 ADD R2, R2, R7 ; copy value of R7 to R2 ; Return from subroutine ;----- End Your Code Here -----; RET ;Outputs single-digit number to the display ;R2 contains number to print printNum ;----- Your Code Here -----;

Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
icon
Related questions
Topic Video
Question

i need this code to work by

  • Calculate all the single-digit Fibonacci numbers in order
    • Start with the first 2 values in the sequence (0, 1)
    • Calculate the next value by adding together the two largest values
  • Print each number in the sequence
    • With a comma and space after each
    • No comma after the last number
  • Use LC-3 I/O device to print number, commas, and spaces
    • NO numbers printed using Trap Routine
    • should check ddr, dsr , load and store

modify the code to work using ALL Guidelines

Fib2 the largest Fibonacci number calculates so far
; Fib1 the previous Fibonacci number
;
; For each Calculation:
; Fib2 = Fib1 + Fib2
; Fib1 = previous Fib2

; R0 used for PUTS messages
; R1 contains current Fib1 value
; R2 contains current Fib2 value
; R6 is loop counter for main loop
; R7 is not used by this program. Used by Simulate for TRAP and Subroutines


.ORIG x3000
Setup
LEA R0, Info
PUTS

ADD R6, R6, #5; Init Main Loop counter (loop 5 times)

;Print first 2 Fib values before starting
;----- Your Code Here -----;
ADD R1, R1, #0 ; R1 initialized to 0

ADD R2, R2, #1 ; R2 initialized to 1

;----- End Your Code Here -----;

;Loop and call subroutines to calculate each subsequent value in the sequence
;Exit the loop once all single-digit values in the sequence have been printed
MainLoop
;----- Your Code Here -----;
AND R7, R7, #0 ; clear R7

ADD R7, R7, R2 ; copy value of R2 to R7

JSR calcNextFib ; call subroutine to calculate next fibonacci number


JSR printNum ; print the number

JSR printCommaSpace ; print comma and space

AND R2, R2, #0 ; clear R2

ADD R2, R2, R7 ; restore value of R2 from R7

ADD R6, R6, #-1 ; reduce loop counter

BRp MainLoop ; continue the loop if R6 is not yet 0

;----- End Your Code Here -----;

Done HALT

;-----------------------------------
;Subroutines
;-----------------------------------

;Uses R1 and R2 to calc next value in Fibonacci sequence
;When complete, Fib2 (R2) will contain the new Fib number
;and Fib1 (R1) will contain the previous value of Fib2 (R2)
calcNextFib
;----- Your Code Here -----;
ADD R7, R2, R1 ; R7 will contain the sum of R1 and R2

AND R1, R1, #0 ; clear R1

ADD R1, R1, R2 ; copy value of R2 to R1

AND R2, R2, #0 ; clear R2

ADD R2, R2, R7 ; copy value of R7 to R2
; Return from subroutine
;----- End Your Code Here -----;
RET

;Outputs single-digit number to the display
;R2 contains number to print
printNum
;----- Your Code Here -----;
ADD R0, R2, #0
OUT
; Use LC-3 I/O device to output the character

;----- End Your Code Here -----;
RET

;Outputs a comma and a space
;No data is passed in and no data is returned
printCommaSpace
;----- Your Code Here -----;
LEA R0, ASCIIComma ; Load ASCII code for comma to R3

; Output the comma to the console
PUTC ; Use LC-3 I/O device to output the character

LEA R0, ASCIISpace ; Load ASCII code for space to R3

; Output the space to the console
PUTC ; Use LC-3 I/O device to output the character

;----- End Your Code Here -----;
RET

 

;End of Program

;Data Declarations-------------
DSR .FILL xFE04
DDR .FILL xFE06

Info .STRINGZ "This program will print the first 6 characters of the Fibboncci Sequence\n"

ASCIIOFSET .FILL x0030
NegASCIIOFSET .FILL xFFD0
ASCIINewline .FILL x000d ; Newline ascii code
ASCIISpace .FILL x0020 ; Space ascii code
ASCIIComma .FILL x002C ; Comma ascii code

; Memory slots for subrountines to store/restore registers
; You may or may not need to use all of these
SaveR3 .BLKW 1
SaveR4 .BLKW 1
SaveR5 .BLKW 1
SaveR6 .BLKW 1

.END

Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 4 steps with 1 images

Blurred answer
Knowledge Booster
Instruction Format
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
Recommended textbooks for you
Database System Concepts
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
Starting Out with Python (4th Edition)
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
Digital Fundamentals (11th Edition)
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
C How to Program (8th Edition)
C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON
Database Systems: Design, Implementation, & Manag…
Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning
Programmable Logic Controllers
Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education