Create a program that will input a sentence and push each character onto the stack all the while counting the number of characters. Then pop off each character and print them backwards (natural with a stack) and print the length. Like so:
I like burgers!
!sregrub ekil I
The number of characters is 15
Note, don't count the '\n' nor push it onto the stack. The stack should be empty when finished. Use an ".equate" to define a label to reference the top of the stack (can be any name but when you pop off the character, you need to use that label defined by the equate).
Note: Do NOT have a branch at the top like with the textbook examples. Place your data and the END of the program (before ".END") and have your program start at location 0 (WITHOUT the first branch). I'll ding you a point if you do.
Here is what I have so far...
ch: .equate 1 count: .equate 2 tos: .equate 3 count2: .equate 4 lda 0,i chari ch,d ldbytea ch,d for: cpa '\n',i breq count stbytea -1,s subsp 1,i lda count,d adda 1,i sta count,d charo tos,s addsp 1,s lda count2,d suba 1,i sta count2,d stop .end
I really don't have much expertise with assembly and pep/8. Any help would be appreciated! Thanks!