Advertisement
Inverth

lab2-asm-v4

Oct 23rd, 2020
118
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. ; =---------------------
  2. ; this's my task:
  3. ; =---------------------
  4. ; f = !Y * Z + !X
  5. ; =---------------------
  6.  
  7.         ORG     0H
  8.         AJMP    START
  9.         ORG     30H
  10.  
  11.  
  12. ; there i'll set up my external memory.
  13. START:
  14.         MOV     DPTR,   #10h
  15.         MOV     A,      #10000000b
  16.         MOVX    @DPTR,  A
  17.         INC     DPTR
  18.        
  19.         MOV     A,      #00000001b
  20.         MOVX    @DPTR,  A
  21.         INC     DPTR
  22.        
  23.         MOV     A,      #00000010b
  24.         MOVX    @DPTR,  A
  25.         INC     DPTR
  26.        
  27.         MOV     A,      #00000011b
  28.         MOVX    @DPTR,  A
  29.         INC     DPTR
  30.        
  31.         MOV     A,      #00000100b
  32.         MOVX    @DPTR,  A
  33.         INC     DPTR
  34.        
  35.         MOV     A,      #00000101b
  36.         MOVX    @DPTR,  A
  37.         INC     DPTR
  38.        
  39.         MOV     A,      #00000110b
  40.         MOVX    @DPTR,  A
  41.         INC     DPTR
  42.        
  43.         MOV     A,      #00000111b
  44.         MOVX    @DPTR,  A
  45.        
  46.        
  47.         MOV     R0,     #10h
  48.         MOV     R1,     #08d
  49.         MOV     DPL,    R0
  50.  
  51.  
  52. LOOP:
  53.         MOV     0C0H,   #00110000b
  54.         MOVX    A,      @DPTR
  55.  
  56.         ORL     0C0H,   A
  57.  
  58.         ACALL   FFUNC
  59.         ACALL   FSEND
  60.        
  61.         INC     DPTR
  62.         DJNZ    R1,     LOOP
  63.        
  64.         AJMP    START
  65.  
  66.  
  67. FSEND:
  68.         SETB    0C0H.4
  69.         JNB     0C0H.5, $
  70.         CPL     0C0H.4
  71.         JB      0C0H.5, $
  72.  
  73.         RET
  74.  
  75.  
  76. FFUNC:
  77.         MOV     C,      0C0H.1
  78.         CPL     C
  79.         ANL     C,      0C0H.0
  80.         ORL     C,      /0C0H.2
  81.         MOV     0C0H.3, C
  82.        
  83.         XRL     A,      0C0H
  84.         MOV     P3,     A
  85.         MOV     C,      P3.3
  86.         MOV     0C0H.7, C
  87.  
  88.         RET
  89.  
  90. END
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement