Advertisement
Inverth

lab2-asm-v3

Oct 17th, 2020
120
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.  
  15.         MOV     DPTR,   #10h
  16.         MOV     A,      #00000010b
  17.         MOVX    @DPTR,  A
  18.         INC     DPTR
  19.        
  20.         MOV     A,      #00000001b
  21.         MOVX    @DPTR,  A
  22.         INC     DPTR
  23.        
  24.         MOV     A,      #00000010b
  25.         MOVX    @DPTR,  A
  26.         INC     DPTR
  27.        
  28.         MOV     A,      #00000011b
  29.         MOVX    @DPTR,  A
  30.         INC     DPTR
  31.        
  32.         MOV     A,      #00000100b
  33.         MOVX    @DPTR,  A
  34.         INC     DPTR
  35.        
  36.         MOV     A,      #00000101b
  37.         MOVX    @DPTR,  A
  38.         INC     DPTR
  39.        
  40.         MOV     A,      #00000110b
  41.         MOVX    @DPTR,  A
  42.         INC     DPTR
  43.        
  44.         MOV     A,      #00000111b
  45.         MOVX    @DPTR,  A
  46.        
  47.        
  48.         MOV     R0,     #10h
  49.         MOV     R1,     #08d
  50.  
  51.  
  52. LOOP:
  53.         MOV     0C0H,   #00110000b     
  54.         MOV     DPL,    R0
  55.         MOVX    A,      @DPTR
  56.    
  57.         ORL     0C0H,   A
  58.  
  59.         ACALL   FFUNC
  60.         ACALL   FSEND
  61.        
  62.         INC     R0
  63.         DJNZ    R1,     LOOP
  64.        
  65.         AJMP    START
  66.  
  67.  
  68. FSEND:
  69.         JNB     0C0H.5, $
  70.         SETB    0C0H.4
  71.         JB      0C0H.5, $
  72.        
  73.         RET
  74.  
  75.  
  76. FFUNC:
  77.         MOV     A,      0C0H
  78.  
  79.         MOV     C,      0C0H.1
  80.         CPL     C
  81.         ANL     C,      0C0H.0
  82.         ORL     C,      /0C0H.2
  83.         MOV     0C0H.3, C
  84.        
  85.         XRL     A,      0C0H
  86.         MOV     P3,     A
  87.         MOV     C,      P3.3
  88.         MOV     0C0H.7, C
  89.  
  90.         RET
  91.    
  92. END
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement