Определение возраста человека на PICassembler
Министерство образования и науки Украины
Житомирский государственный технологический университет
ЛАБОРАТОРНАЯ РАБОТА
Определение возраста человека на PICassembler
Кафедра ПОВТ
Группа ПИ-40
ФИКТ
Выполнил
Проверил
Житомир
Содержание
1. Задание
. Разработка программы
.1 Выбор методов решения данной задачи
.2 Разработка алгоритма
. Распределение регистров
. Тестирование программы
. Листинг программы
Вывод
1.Задание
На языке PICAssembler написать программу, которая подсчитывает количество прожитых дней.
2.Разработка программы
2.1Выбор методов решение данной задачи
В данной задаче используются 2 даты, по этому для их записи будем использовать правила записи дат: дд.мм.гггг. В данной программе исходными данными являются даты D1 и D2, которые задаются в двоично-десятичном коде. По этому для их записи выделяем 1 байт для дней, 1 байт для месяцев и 2 байта для года. Для поиска количества прожитых дней сначала обе даты переведем в количество дней, потом найдем разницу между этими количествами - это и будет количество прожитых дней. Для подсчета данной функции разработаем процедуры сложения, вычитания, умножение, деления, умножения и деления на 4.
Проект программы включает файлы: Проект:
·Init.inc - в данном файле оглашаются все регистры и биты, которые используются в программе;
·Clrreg.inc - в данном файле описывается процедура очистки памяти;
·Baseprog.inc - в данном файле описаны основные процедуры, которые используются в программе;
·DateWork.inc - в данном файле описаны процедуры, которые используются для переведения дат в количество дней;
·Addition.inc - в данном файле описаны процедуры сложения;
·Deduct.inc - в данном файле описаны процедуры вычитания;
·Increase.inc - в данном файле описана процедура умножения;
·HMDL.asm-это главный файл, который объединяет все функции в одно целое;
·Input.sti - отладочный файл для введения данных.
Данную программу будем разрабатывать для микроконтроллера 16F84.
2.2Разработка алгоритма
3.Распределение регистров
Распределение регистров указано на рис. 1
Рис. 1
·10h-13h-в начале программы заносится I дата (в прямом коде);
·20h-23h-на - в начале программы заносится II дата (в прямом коде);
·14h-16h-используется для сохранения промежуточных данных при переводе I даты в количество дней и сохранения количества дней в I дате; 24h-26h - используется для сохранения промежуточных данных при переводе I даты в количество дней и сохранения количества дней в II дате;
·3Ch-47h - используется для сохранения количества дней в разных месяцах, что необходимо для корректного перевода дат в количество дней;
·0Сh-0Fh-вспомогательные регистры;
·18h-1Ah, - 28h-2Ah, 38h-3Ah, 48h-4Ah, - используются для умножения количества годов в каждой дате на 365;
·35h-36h-находится промежуточный результат;
·34h-36h, 44h-46h, а также 3Сh-3Fh, 4Fh - регистры, которые используются для переведения результата с прямого кода в двоично-десятичную систему;
·3Dh-3Fh - результат работы программы (количество прожитых дней) в двоично-десятичном коде;
4.Тестирование программы
программа алгоритм регистр файл листинг
Для проверки работы программы было введено несколько контрольных примеров. Результаты программы сопоставлялись с реальными.
Пример 1:
Введено следующие значения:=25.11.2009(10)=19.0B.07D9(h)
D2=21.03.1990(10)=15.03.07C6(h)
Результат работы программы: 1С15(h)=7189(10). Реальный результат - 7189.
Пример 2:
Введено следующие данные:
D1=30.10.2009(10)=1E.0A.07D9(h)
D2=30.12.1987(10)=1E.0C.07C3(h)
Результат работы программы: 1F27(h)=7975(10). Реальный результат - 7975.
Пример 3:
Введено следующие данные:=30.10.2009(10)=1E.0A.07D9(h)
D2=26.02.1991(10)=1A.02.07C7(h)
Результат работы программы: 1AA5(h)=6821(10). Реальный результат - 6821.
5.Листинг программы
Файл Init.inc
;Инициализация регистров-EQU-0X10-EQU-0X20EQU-0X0CEQU-0X0DEQU-0X0E
IC-EQU-0X0FEQU-0X3CEQU-0X4F
Файл Clrreg.inc
;ОЧИЩЕНИЕ ПАМЯТИMOVLW - 0X40 -
- MOVWF - IC -
MOVLW - 0X10
MOVWF - FSRCLRF-INDF
INCF-FSR,F
DECFSZ - IC,F
GOTO - CR
RETURN
Файл Baseprog.inc
;СЧИТЫВАЕНИ ВХОДНЫХ ДАННЫХ
DATEIN - MOVLW - D1
MOVWF - FSR
CALL-DATAIN
MOVLW - D1 -
MOVWF - FSR
CALL-TDATE
MOVLW - D2-
MOVWF - FSR-
CALL-DATAIN -
MOVLW - D2 -
MOVWF - FSR
CALL-TDATE-
- RETURN
;СЧИТЫВАНИЕ ДАТ С ФАЙЛА
DATAIN - MOVLW - 0X04 -
- MOVWF - IC - MOVF-PORTB,W -
MOVWF - INDF -
INCF-FSR,F -
DECFSZ - IC,F -
GOTO - NL
RETURN
;КОНВЕРТАЦИЯ ДАТ С ДОВИЧНО-ДЕСЯТИЧНОГО В ПРЯМОЙ КОД
TDATE - MOVLW - 0X10
SUBWF-INDF,W
BTFSS-STATUS,C -
GOTO-TMONS
MOVLW - 0X20
SUBWF-INDF,W
BTFSC-STATUS,C
GOTO-GO30-;СМ. ЛИСТ. 8
MOVLW - 0X06
SUBWF-INDF,F
GOTO-TMONS-;СМ. ЛИСТ. 8
- MOVLW - 0X30
SUBWF-INDF,W
BTFSC-STATUS,C
GOTO-GO31
MOVLW - 0X0C
SUBWF-INDF,F
GOTO-TMONS- MOVLW - 0X12
SUBWF-INDF,F- INCF-FSR,F
BTFSS-INDF,4
GOTO-TYEARS
BCF-INDF,4
MOVLW - 0X0A
ADDWF - INDF,F- INCF-FSR,F
MOVF-INDF,W -
MOVWF - RP -
MOVLW - 0X17 -
ADDWF - FSR,F -
MOVF-RP,W -
MOVWF - INDF -
MOVLW - 0X04 -
MOVWF - IC - - BCF-STATUS,C -
RRF-INDF,F-
DECFSZ - IC,F-
GOTO-YMR11-
MOVLW - 0X11 -
SUBWF-FSR,F -
MOVLW - 0X03 -
MOVWF - INDF -
INCF-FSR,F -
MOVLW - 0XE8 -
MOVWF - INDF -
MOVLW - 0X0A
MOVWF - ICV
CALL-MNOZH -
MOVLW - 0X64
MOVWF - INDF
MOVLW - 0X10
ADDWF - FSR,F
CLRF-INDF
DECF-FSR,F
CLRF-INDF
MOVLW - 0X16
SUBWF-FSR,F
MOVF-INDF,W -
MOVWF - RP -
MOVLW - 0X17 -
ADDWF - FSR,F -
MOVF-RP,W -
MOVWF - INDF -
MOVLW - 0X04 -
MOVWF - IC - - BCF-STATUS,C
RLF-INDF,F -
DECFSZ - IC,F -
GOTO-YML1 -
MOVWF - IC - - BCF-STATUS,C
RRF-INDF,F -
DECFSZ - IC,F -
GOTO-YMR12 -
MOVLW - 0X07
MOVWF - ICV
MOVLW - 0X10
SUBWF-FSR,F
CALL-MNOZH
MOVLW - 0X0A
MOVWF - INDF
MOVLW - 0X10
ADDWF - FSR,F
CLRF-INDF
DECF-FSR,F
CLRF-INDF
MOVLW - 0X15
SUBWF-FSR,F
MOVF-INDF,W
MOVWF - RP
MOVLW - 0X16
ADDWF - FSR,F
MOVF-RP,W
MOVWF - INDF
MOVLW - 0X04
MOVWF - IC- BCF-STATUS,C
RRF-INDF,F
DECFSZ - IC,F
GOTO-YMR21
MOVLW - 0X10
SUBWF-FSR,F
MOVLW - 0X04
MOVWF - ICV
CALL-MNOZH
MOVLW - 0X10
ADDWF - FSR,F
CLRF-INDF
DECF-FSR,F
CLRF-INDF
MOVLW - 0X15
SUBWF-FSR,F
MOVF-INDF,W
MOVWF - RP
MOVLW - 0X16
ADDWF - FSR,F
MOVF-RP,W
MOVWF - INDF
MOVLW - 0X04
MOVWF - IC- BCF-STATUS,C
RLF-INDF,F
DECFSZ - IC,F
GOTO-YML2
MOVWF - IC- BCF-STATUS,C
RRF-INDF,F
DECFSZ - IC,F
GOTO-YMR22
MOVLW - 0X02
MOVWF - IC
CALL-PLUS2
MOVLW - 0X12
ADDWF - FSR,F
MOVF-INDF,W
MOVWF - RP
CLRF-INDF
MOVLW - 0X26
SUBWF-FSR,F
MOVF-RP,W
MOVWF - INDF
MOVLW - 0X25
ADDWF - FSR,F
MOVF-INDF,W
MOVWF - RP
CLRF-INDF
MOVLW - 0X26
SUBWF-FSR,F
MOVF-RP,W
MOVWF - INDF
MOVLW - 0X17
ADDWF - FSR,F
- CLRF-INDF
RETURN
;ПЕРЕВОД ДАТ В КОЛИЧЕСТВО ДНЕЙ
CNTDAYS - CALL-REGMONS
MOVLW - D1+0X03
MOVWF - FSR
CALL-CDAYS
MOVLW - D2+0X03
- MOVWF - FSR
CALL-CDAYS
RETURN
;ПОДСЧЕТ КОЛИЧЕСТВА ПРОЖИТЫХ ДНЕЙ
LIVEDAY - MOVLW - 0X03
MOVWF - IC
MOVLW - D1+0X06
- MOVWF - FSR
CALL-MINUS3
;КОНВЕРТАЦИЯ РЕЗУЛЬТАТА ИЗ ШЕСТНАДЦАТИРИЧНОГО В ДВОИЧНО-ДЕСЯТИЧНЫЙ КОД
- MOVLW - RM
MOVWF - FSR
MOVLW - 0X14
MOVWF - IC- CLRF-INDF
INCF-FSR,F
DECFSZ - IC,F
GOTO-CLRMNS
MOVLW - 0X0A
SUBWF-FSR,F
MOVLW - 0X10
MOVWF - INDF
DECF-FSR,F
MOVLW - 0X27
MOVWF - INDF
MOVLW - 0X10
SUBWF-FSR,F -
STEP4 - MOVLW - 0X03-;ДЕЛИМ НА 10000
- MOVWF - IC
INCF-FSR,F
CALL-MINUS1
INCF-FSR,F
MOVF-INDF,F
BTFSS-STATUS,Z
GOTO-GOSTEP3
INCF-RPM,F
INCF-FSR,F
GOTO-STEP4- MOVLW - 0X03
MOVWF - IC
MOVLW - 0X02
ADDWF - FSR,F
CALL-PLUS1
MOVLW - 0X0C
ADDWF - FSR,F
CALL-ADDDCML
MOVLW - 0X0A
ADDWF - FSR,F
MOVLW - 0XE8
MOVWF - INDF
DECF-FSR,F
MOVLW - 0X03
MOVWF - INDF
MOVLW - 0X10
SUBWF-FSR,F- MOVLW - 0X03-;ДЕЛИМ НА 1000
MOVWF - IC
INCF-FSR,F
CALL-MINUS1
INCF-FSR,F
MOVF-INDF,F
BTFSS-STATUS,Z
GOTO-GOSTEP2
INCF-RPM,F
INCF-FSR,F
GOTO-STEP3- MOVLW - 0X03
MOVWF - IC
MOVLW - 0X02
ADDWF - FSR,F
CALL-PLUS1
MOVLW - 0X0C
ADDWF - FSR,F
CALL-ADDDCML
MOVLW - 0X0A
ADDWF - FSR,F
MOVLW - 0X64
MOVWF - INDF
DECF-FSR,F
CLRF-INDF
MOVLW - 0X10
SUBWF-FSR,F
STEP2 - MOVLW - 0X03-;ДЕЛИМ НА 100
- MOVWF - IC
INCF-FSR,F
CALL-MINUS1
INCF-FSR,F
MOVF-INDF,F
BTFSS-STATUS,Z
GOTO-GOSTEP1
INCF-RPM,F
INCF-FSR,F
GOTO-STEP2- MOVLW - 0X03
MOVWF - IC
MOVLW - 0X02
ADDWF - FSR,F
CALL-PLUS1
MOVLW - 0X0C
ADDWF - FSR,F
CALL-ADDDCML
MOVLW - 0X0A
ADDWF - FSR,F
MOVLW - 0X0A
MOVWF - INDF
MOVLW - 0X11
SUBWF-FSR,F- MOVLW - 0X03-;ДЕЛИМ НА 10
- MOVWF - IC
INCF-FSR,F
CALL-MINUS1
INCF-FSR,F
MOVF-INDF,F
BTFSS-STATUS,Z
GOTO-GOSTEP0
INCF-RPM,F
INCF-FSR,F
GOTO-STEP1- MOVLW - 0X03-;ПРИБАВЛЯЕМ ОСТАТОК
MOVWF - IC
MOVLW - 0X02
ADDWF - FSR,F
CALL-PLUS1
MOVLW - 0X0C
ADDWF - FSR,F
CALL-ADDDCML
MOVLW - 0X06
SUBWF-FSR,F
MOVF-INDF,W
MOVWF - RPM
MOVLW - 0X09
ADDWF - FSR,F
CALL-ADDDCML
RETURN
;ВСПОМОГАТЕЛЬНАЯ ПРОЦЕДУРА КОНВЕРТАЦИИ- MOVLW - 0X04
- MOVWF - ICV- MOVLW - 0X03
MOVWF - IC- RLF-INDF,F
DECF-FSR,F
DECFSZ - IC,F
GOTO-BITEMOV
ADDWF - FSR,F
DECFSZ - ICV,F
GOTO-BITMOV
MOVWF - IC
CALL-PLUS1
CLRF-RPM
RETURN
Файл DateWork.inc
;ОСНОВНАЯ ПРОЦЕДУРА ПЕРЕВЕДЕНИЯ ДАТ В КОЛИЧЕСТВО ДНЕЙ
CDAYS - MOVF-INDF,W
MOVWF - RP
MOVLW - 0X03
ADDWF - FSR,F
MOVF-RP,W
MOVWF - INDF
MOVLW - 0X04
SUBWF-FSR,F
MOVF-INDF,W -
MOVWF - RP
MOVLW - 0X03
ADDWF - FSR,F
MOVF-RP,W
MOVWF - INDF
MOVF-FSR,W
MOVWF - RP
CALL-VYSGOD
MOVLW - 0X06
SUBWF-FSR,F
MOVF-FSR,W
MOVWF - RPM
MOVF-NDF,W
MOVWF - ICV
DECF-ICV,W
MOVWF - RM- MOVLW - RM
ADDWF - RM,W
MOVWF - FSR
MOVF-INDF,W -
MOVWF - RP
MOVLW - 0X15
ADDWF - RPM,W
MOVWF - FSR
MOVF-RP,W
MOVWF - INDF
MOVLW - 0X03
MOVWF - IC
MOVLW - 0X10
SUBWF-FSR,F
CALL-PLUS1
DECF-RM,F
DECFSZ - ICV,F -
GOTO-DTOMONS -
MOVLW - 0X03
SUBWF-FSR,F
MOVF-INDF,W
MOVWF - RP
MOVLW - 0X16
ADDWF - FSR,F
MOVF-RP,W
MOVWF - INDF
MOVLW - 0X03
MOVWF - IC
MOVLW - 0X10
SUBWF-FSR,F
CALL-PLUS1
MOVLW - 0X02
MOVWF - ICV- MOVF-INDF,W -
MOVWF - RP
MOVLW - 0X17
ADDWF - FSR,F
MOVF-RP,W
MOVWF - INDF
MOVLW - 0X18
SUBWF-FSR,F
DECFSZ - ICV,F
GOTO-DMOV
MOVLW - 0X09
ADDWF - FSR,F
MOVLW - 0X6D
MOVWF - INDF
DECF-FSR,F
MOVLW - 0X01
MOVWF - INDF -
MOVLW - 0X09
MOVWF - ICV
INCF-FSR,F
CALL-MNOZH
MOVLW - 0X03
MOVWF - IC
MOVLW - 0X10
ADDWF - FSR,F- CLRF-INDF
MOVLW - 0X10
ADDWF - FSR,F
MOVF-INDF,W -
MOVWF - RP
CLRF-INDF
MOVLW - 0X14
SUBWF-FSR,F
MOVF-RP,W
MOVWF - INDF
MOVLW - 0X03
ADDWF - FSR,F
DECFSZ - IC,F
GOTO-MNTODOD -
MOVLW - 0X03
MOVWF - IC
MOVLW - 0X11
SUBWF-FSR,F
CALL-PLUS1
MOVLW - 0X03
MOVWF - IC
MOVLW - 0X13
ADDWF - FSR,F- CLRF-INDF
DECF-FSR,F
- DECFSZ - IC
GOTO-CLRDOD
RETURN
;ПОДСЧЕТ КОЛИЧЕСТВА ВЫСОКОСНЫХ ГОДОВ
VYSGOD - MOVLW - 0X02
MOVWF - ICV- MOVLW - 0X02
MOVWF - IC
MOVF-RP,W
MOVWF - FSRRRF-INDF,F
INCF-FSR,F
DECFSZ - IC,F
GOTO-VG
BCF-STATUS,C
DECFSZ - ICV,F
GOTO-KOLSDV
RETURN
;ЗАПОЛНЕНИЕ РЕГИСТРОВ ДНЕЙ В МЕСЯЦЫ
REGMONS - MOVLW - 0X1F
- MOVWF - RM+0X01
MOVLW - 0X1C
MOVWF - RM+0X02
MOVLW - 0X1F
MOVWF - RM+0X03 -
MOVLW - 0X1E
MOVWF - RM+0X04
MOVLW - 0X1F
MOVWF - RM+0X05
MOVLW - 0X1E
MOVWF - RM+0X06
MOVLW - 0X1F
MOVWF - RM+0X07
MOVLW - 0X1F
MOVWF - RM+0X08
MOVLW - 0X1E
MOVWF - RM+0X09
MOVLW - 0X1F
MOVWF - RM+0X0A
MOVLW - 0X1E
MOVWF - RM+0X0B
RETURN
Файл Addition.inc
;ПРОЦЕДУРЫ СЛОЖЕНИЯ- CLRF-RS- MOVF-INDF,W
ADDWF - RS,W
MOVWF - RP
CLRF-RS
MOVLW - 0X01
BTFSC-STATUS,C
MOVWF - RS
MOVLW - 0X10
ADDWF - FSR,F
MOVF-INDF,W
ADDWF - RP,F
MOVLW - 0X01
BTFSC-STATUS,C
MOVWF - RS
MOVLW - 0X10
SUBWF-FSR,F
MOVF-RP,W
MOVWF - INDF
DECF-FSR,F
DECFSZ - IC,F
GOTO-ADN1
RETURN
- CLRF - RS- MOVF-INDF,W
ADDWF - RS,W
MOVWF - RP
CLRF-RS
MOVLW - 0X01
BTFSC-STATUS,C
MOVWF - RS
MOVLW - 0X10
ADDWF - FSR,F
MOVF-INDF,W
ADDWF - RP,F
MOVLW - 0X01
BTFSC-STATUS,C
MOVWF - RS
MOVF-RP,W
MOVWF - INDF
MOVLW - 0X11
SUBWF-FSR,F
DECFSZ - IC,F
GOTO-ADN2
RETURN
- CLRF-RS- MOVF-INDF,W
ADDWF - RS,W
MOVWF - RP
CLRF-RS
MOVLW - 0X01
BTFSC-STATUS,C
MOVWF - RS
MOVLW - 0X10
ADDWF - FSR,F
MOVF-INDF,W
ADDWF - RP,F
MOVLW - 0X01
BTFSC-STATUS,C
MOVWF - RS
MOVLW - 0X10
ADDWF - FSR,F
MOVF-RP,W
MOVWF - INDF
MOVLW - 0X21
SUBWF-FSR,F
DECFSZ - IC,F
GOTO-ADN3-
RETURN
Файл Deduct.inc
;ПРОЦЕДУРЫ ВЫЧИТАНИЯ- CLRF-RS- MOVF-INDF,W -
MOVWF - RP
MOVF-RS,W
SUBWF-RP,F
CLRF-RS
MOVLW - 0X01
BTFSS-STATUS,C
MOVWF - RS
MOVLW - 0X10
ADDWF - FSR,F
MOVF-INDF,W
SUBWF-RP,W
MOVWF - RP
MOVLW - 0X01
BTFSS-STATUS,C
MOVWF - RS
MOVLW - 0X10
SUBWF-FSR,F
MOVF-RP,W
MOVWF - INDF
DECF-FSR,F
DECFSZ - IC,F
GOTO-VIDN1
RETURN
- CLRF-RS- MOVF-INDF,W
MOVWF - RP
MOVF-RS,W
SUBWF-RP,F
CLRF-RS
MOVLW - 0X01
BTFSS-STATUS,C
MOVWF - RS
MOVLW - 0X10
ADDWF - FSR,F
MOVF-INDF,W
SUBWF-RP,W
MOVWF - RP
MOVLW - 0X01
BTFSS-STATUS,C
MOVWF - RS
MOVF-RP,W
MOVWF - INDF
MOVLW - 0X11
SUBWF-FSR,F
DECFSZ - IC,F
GOTO-VIDN2
RETURN
MINUS3 - CLRF-RS- MOVF-INDF,W
MOVWF - RP
MOVF-RS,W
SUBWF-RP,F
CLRF-RS
MOVLW - 0X01
BTFSS-STATUS,C
MOVWF - RS
MOVLW - 0X10
ADDWF - FSR,F
MOVF-INDF,W
SUBWF-RP,W
MOVWF - RP
MOVLW - 0X01
BTFSS-STATUS,C
MOVWF - RS
MOVLW - 0X10
ADDWF - FSR,F
MOVF-RP,W
MOVWF - INDF
MOVLW - 0X21
SUBWF-FSR,F
DECFSZ - IC,F
GOTO-VIDN3
RETURN
Файл Increase.inc
- INCLUDE<ADDITION.INC>
;ПРОЦЕДУРЫ УМНОЖЕНИЯ- MOVLW - 0X09
MOVWF - ICV
MOVF-FSR,W
MOVWF - RMBTFSC-INDF,0
GOTO-MNDOD- MOVLW - 0X03
MOVWF - IC
MOVF-RM,W
MOVWF - FSR
MOVLW - 0X10
ADDWF - FSR,F
BCF-STATUS,C- RLF-INDF,F
DECF-FSR,F
DECFSZ - IC,F
GOTO-SDVL
MOVLW - 0X03
MOVWF - IC
MOVLW - 0X0F
SUBWF-FSR,F
BCF-STATUS,C- RRF-INDF,F
INCF-FSR,F
DECFSZ - IC,F
GOTO-SDVR
MOVF-RM,W
MOVWF - FSR
DECFSZ - ICV,F -
GOTO-MN
GOTO-ENDMN- MOVLW - 0X03
MOVWF - IC
MOVLW - 0X10
ADDWF - FSR,F
CALL-PLUS2
GOTO-GOMN - - RETURN
Файл HMDL.asm
- INCLUDE<P16F84.INC>
- INCLUDE<INIT.INC>; ИНИУИАЛИЗАЦИЯ РЕГИСТРОВ, КОТОРЫЕ СПОЛЬЗУЮТСЯ
CALL - CLREG-;ОЧИЩЕНИЯ РЕГИСТРОВ
CALL - DATEIN - ;ЗАГРУЗКА ДАТ
CALL - CNTDAYS - ;ПЕРЕВЕДЕНИЯ ДАТ В КОЛИЧЕСТВО ДНЕЙ
CALL - LIVEDAY - ;НАХОДИМ КОЛИЧЕСТВО ПРОЖИТЫХ ДНЕЙ
GOTO - ENDPROG - ;ПЕРЕХОД В КОНЕЦ ПРОГРАММЫ
;-------СТРУКТУРНЫЕ ЭЛЕМЕНТЫ------------
INCLUDE<CLRREG.INC> - ;ОЧИСТКА РЕГИСТРОВ
INCLUDE<BASEPROG.INC> - ;ПРОЦЕДУРЫ, КОТОРЫЕ РЕАЛИЗУЮТ ОСНОВНОЙ АЛГОРИТМ
INCLUDE<DATEWORK.INC> - ;ПРОЦЕДУРЫ ПЕРЕВЕДЕНИЯ ДАТ В КОЛИЧЕСТВО ДНЕЙ
- INCLUDE<DEDUCT.INC> - ;ВЫЧИТАНИЕ
INCLUDE<INCREASE.INC> - ;УМНОЖЕНИЯ
;-------СТРУКТУРНЫЕ ЭЛЕМЕНТЫ------------
- GOTO - $
END
Вывод
В данной лабораторной работе были приобретены навыки программирования на языке PICAssembler и определенные знания в области использования IDE MPLAB. Результатом данной работы является программы, которая подсчитывает количество прожитых дней.
Больше работ по теме:
Предмет: Информационное обеспечение, программирование
Тип работы: Практическое задание
Новости образования
КОНТАКТНЫЙ EMAIL: [email protected]
Скачать реферат © 2017 | Пользовательское соглашение
ПРОФЕССИОНАЛЬНАЯ ПОМОЩЬ СТУДЕНТАМ