Практические задания на экзамен по дисциплине "Цифровые и микропроцессорные устройства", страница 12

                    MVI           B,0H

                    LXI            D,0

LOOP_SUM11:

                    MOV         A,M

                    ADD           E

                    MOV         E,A

                    JNC           NO_CRY

                    INR            D

NO_CRY:

                    INX            H

                    DCR           B

                    JNZ           LOOP_SUM11          

13.1. Вычислить контрольную сумму буфера BUF1 по модулю 256. Суммирование выполнить для всех H-чисел буфера. Размер буфера 180H байт.

ZAD13:                                                                                                       ;!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

                    ;в задаче не нужно, приведено для наглядности: 

INIT13:

        LXI    H,BUF13

                    LXI            B,180H

                    MVI           A,0FH

LOOP_INIT13:

                    RLC          

                    MOV         M,A

                    INX            H

                    DCX          B

                    MOV         A,C

                    ORA          B

                    JNZ           LOOP_INIT13

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;         

                    LXI            H,BUF13

                    LXI            B,180H

                    MVI           D,0

LOOP_SUM13:

                    MOV         A,M

                    CALL        LOW_HEX

                    MOV         A,M

                    CALL        HIGH_HEX

                    INX            H

                    DCX          B

                    MOV         A,C

                    ORA          B

                    JNZ           LOOP_SUM13

LOW_HEX:

                    ANI            0FH

                    ADD           D

                    MOV         D,A

                    RET

HIGH_HEX:

                    ANI            0F0H

                    RRC

                    RRC

                    RRC

                    RRC

                    ADD           D

                    MOV         D,A

RET

14.1. Написать подпрограмму сравнения двухбайтовых чисел, расположенных в регистрах BC и DE. По результатам сравнения установить флаги:

CY=1, Z=0, если операнды BC<DE;

CY=0, Z=1, если операнды BC=DE;  

CY=0, Z=0, если операнды BC>=DE.    

ZAD14:

                    LXI            SP,STPOINT

                    CALL        SRAVN

SRAVN:

LHLDNAMBER1

MOVB,H                                                                       ;ДРУГИЕ ЗНАЧЕНИЯ NAMBER ЗАПИСЫВАЮТСЯ

MOVC,L                                                                        ;в структуре даных после диррективы DB

LHLD       NAMBER2                                                        

                    XCHG

                    MOV         A,B

                    CMP          D

                    JNZ           ENDTEXT8

                    MOV         A,C

                    CMP          E

ENDTEXT8:

                    RET

19.1.

$ALLPUBLIC

$TITLE(TITLE   'LAB-RAB6. I8085 2009 =L_04.A85')

;--------------------------------------------------------------

;

;       LAB_04.A85

;

; РАЗДЕЛ 8 ПО ЛАБОРАТОНОМУ ПРАКТИКУМУ

;--------------------------------------------------------------

;       NO ERRORS

; INPUT - INTERRUPT CODING MESSAGE:

;       DATA - STROBED INPUT INTO THE PORT B 8155,

;       STROBE - TO THE PIN PORTC.5 -B STB

;       8085 INTERRUPT - FROM PIN PORTC.3 TO RST7.5

;

; OUTPUT - DECOGING MESSAGE FROM THE PORT A 8155

;

; FILES:

; INPUT FILE WORK\DEMO.MSG, WORK\DEMO2.MSG

; INTERRUPT FILE WORK\STB.MSG

; OUTPUT FILE WORK\OUT2.MSG

; COMAND FILE WORK\LAB_RAB2.ZGR

;--------------------------------------------------------------

RAM     EQU     0800H

ROM     EQU     0000H

LEN_RAM EQU     0800H

POINT      EQU          RAM+0C2H

;       DATA BUFFERS

TEXTSIZE        EQU     20H

        DEFSEG  RAM_BUF1,CLASS=DATA,START=RAM

        SEG     RAM_BUF1

BUF1    DS      TEXTSIZE