A51 MACRO ASSEMBLER LR1 03/05/2011 18:24:57 PAGE 1 MACRO ASSEMBLER A51 V8.00d OBJECT MODULE PLACED IN lr1.OBJ ASSEMBLER INVOKED BY: C:\Keil\C51.BAK001\BIN\A51.EXE lr1.a SET(SMALL) DEBUG EP LOC OBJ LINE SOURCE ---- 1 cseg at 0 ; абсолютный сегмент кода размещается с адреса 0 2 ; в программной памяти 0000 E590 3 mov a,P1 ; ввод байта данных с порта Р1 в аккумулятор 0002 54F0 4 anl a,#0f0h ; выделение старшей тетрады А1 0004 C4 5 swap a ; тетрада перемещается в младшие разряды 0005 75F00A 6 mov b,#10 ; 10 в регистре множителя 0008 A4 7 mul ab ; a=A1*10, b=0 0009 F5F0 8 mov b,a ; сохранить младшие разряды произведения 000B E590 9 mov a,P1 ; ввод байта данных с порта Р1 в аккумулятор 000D 540F 10 anl a,#0fh ; выделение младшей тетрады А0 000F 25F0 11 add a,b ; a=(A1*(10)2 + A0)2 0011 F5A0 12 mov P2,a ; вывод результата в порт Р2 0013 E5A0 13 mov a, P2 0015 75F00A 14 mov b, #10 0018 84 15 div ab 0019 C4 16 swap a 001A 25F0 17 add a, b 001C F5B0 18 mov P3, a 19 end ; псевдокоманда ассемблера- завершение текста A51 MACRO ASSEMBLER LR1 03/05/2011 18:24:57 PAGE 2 SYMBOL TABLE LISTING ------ ----- ------- N A M E T Y P E V A L U E ATTRIBUTES B. . . . . . . . . D ADDR 00F0H A P1 . . . . . . . . D ADDR 0090H A P2 . . . . . . . . D ADDR 00A0H A P3 . . . . . . . . D ADDR 00B0H A REGISTER BANK(S) USED: 0 ASSEMBLY COMPLETE. 0 WARNING(S), 0 ERROR(S)