Advertisement
Inverth

lab2-asm-v2

Oct 16th, 2020
132
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. ; this is my task:
  2. ; f = !x + !y * z
  3.  
  4.         ORG     0H
  5.         AJMP    START
  6.         ORG     30H
  7.  
  8.  
  9. ; there i'll set up my external memory.
  10. START:
  11.         MOV     10H,    #00000000b
  12.         MOV     11H,    #00000001b
  13.         MOV     12H,    #00000010b
  14.         MOV     13H,    #00000011b
  15.         MOV     14H,    #00000100b
  16.         MOV     15H,    #00000101b
  17.         MOV     16H,    #00000110b
  18.         MOV     17H,    #00000111b
  19.        
  20.         MOV     R0,     #10h
  21.         MOV     R1,     #08d
  22.  
  23.  
  24. LOOP:
  25.         MOV     0C0H,   #00110000b
  26.         MOV     A,      @R0
  27.    
  28.         ORL     0C0H,   A
  29.  
  30.         ACALL   FFUNC
  31.         ACALL   FSEND
  32.        
  33.         INC     R0
  34.         DJNZ    R1,     LOOP
  35.        
  36.         AJMP    START
  37.  
  38.  
  39. FSEND:
  40.         JNB     0C0H.5, $
  41.         SETB    0C0H.4
  42.         JB      0C0H.5, $
  43.        
  44.         RET
  45.  
  46.  
  47. FFUNC:
  48.         MOV     A,      0C0H
  49.  
  50.         MOV     C,      0C0H.1
  51.         CPL     C
  52.         ANL     C,      0C0H.0
  53.         ORL     C,      /0C0H.2
  54.         MOV     0C0H.3, C
  55.        
  56.         XRL     A,      0C0H
  57.         MOV     P3,     A
  58.         MOV     C,      P3.3
  59.         MOV     0C0H.7, C
  60.  
  61.         RET
  62.    
  63. END
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement