Question: Using the MPLAB software create a file that mimics one of the levels of Human Resource Machine. See HRM _ RAINY _ SUMMER.asm as well

Using the MPLAB software create a file that mimics one of the levels of Human Resource Machine. See HRM_RAINY_SUMMER.asm as well as SKIP_TEST.asm and DEC_SKIP_TEST.asm
HRM_RAINY_SUMMER.asm:
COUNTER EQU 0X00 ;DEFINING REGISTER LABELS USING EQU DIRECTIVE
INBOX1 EQU 0X01
OUTBOX EQU 0X03
;WREG EQU 0XFE8
MOVLW 0X05 ;MOVING LIT. VAL 5 INTO WREG
MOVWF COUNTER ;COPYING FROM WREG TO COUNTER REG USED FOR LOOPING
CLRF WREG ;CLEARING VALUE FROM W (RESETS IT TO 0)
LOOP: INCF INBOX1,F ;INCREMENT INBOX REG BY 1 AND SAVE VALUE
INCF WREG,F ;INCREMENT WREG BY 1 AND SAVE VALUE
ADDWF INBOX1,F ;ADD WREG AND INBOX TOGETHER AND SAVE IN INBOX
MOVFF INBOX1,OUTBOX ;COPY RESULT OF ADD FROM INBOX TO OUTBOX REG
DECF COUNTER,F ;DECREMENT COUNTER BY 1 AND SAVE IN COUNTER REG
BNZ LOOP ;WILL EXECUTE LOOP LABLE AS LONG AS COUNTER IS NOT ZERO (BRANCH NOT ZERO)
END ;NECESSARY MPLAB DIRECTIVE TO STOP THE CODE
SKIP_TEST.asm
REG1 EQU 0X01 ;DEFINE REGISTER CONSTANTS USING EQU DIRECTIVE
REG2 EQU 0X02
MOVLW 0X05 ;COPY LITERAL VAL 5 TO W
MOVWF REG1 ;COPY W VAL TO REG1
;MOVLW 0X0F ;COPY LITERAL VAL 15 TO W
CPFSEQ REG1 ;COMPARE VALS IN REG1 WITH W IF = SKIP NEXT INSTRUCTION
MOVLW 0X0A ; INSTRUCTION WILL BE SKIPPED IF INSTRUCTION ABOVE IS TRUE
MOVFF REG1,REG2 ;COPY VAL IN REG1 TO REG2
END
DEC_SKIP_TEST.asm
REG1 EQU 0X01 ;DEFINE REGISTER CONSTANTS USING EQU DIRECTIVE
REG2 EQU 0X02
MOVLW 0X05 ;COPY LITERAL VAL 5 TO W
MOVWF REG1 ;COPY W VAL TO REG1
DCFSNZ REG1,F ;DECREMENTS FILE REG AND SKIPS NEXT INSTRUCTION IF FILE IS NOT =0
MOVLW 0X0A ;IF REG11 IS NOT 0 THIS LINE WONT' EXECUTE
MOVWF REG2 ;THE NEXT INSTRUCTION WILL BEGIN HERE.
END

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!