BASIC4MCU | 질문게시판 | assembly coding 한 번만 도와주세요 ㅜ
페이지 정보
작성자 마프마푸 작성일2022-06-04 13:01 조회1,251회 댓글3건본문
IF(var1 > 5) && (var2 <10)
THEN
SUM = SUM+100;
ELSE
SUM =10;
ENDIF
이 pseudo code를 assembly language로 변환해야 하는데 감이 안 옵니다 ㅜ
도와주실 분들 계시다면 한 번만 도와주세요
댓글 3
조회수 1,251master님의 댓글
master 작성일assembly language는 mcu 종류마다 다릅니다.
마프마푸님의 댓글
마프마푸
8051입니다!
master님의 댓글
master 작성일
MOC A, VAL1
CJNE A, #5, CHK1 ; If A is not 5, check1
LJMP IS_EQUAL_GREATER ; A is 5, so jump to EQUAL_GREATER code
CHK1:
JNC IS_EQUAL_GREATER ; If carry is CLEAR, A is EQUAL_GREATER than 5
MOC A, VAL2
CJNE A, #10, CHK2 ; If A is not 10, check2
LJMP IS_EQUAL_GREATER ; A is 10, so jump to EQUAL_GREATER code
CHK2:
JNC IS_EQUAL_GREATER ; If carry is CLEAR, A is EQUAL_GREATER than 10
MOV A, SUM
ADD A, #100
MOV SUM, A
LJMP DONE
IS_EQUAL_GREATER:
MOV SUM, #10
DONE: