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

                    JNZ           LOOPSUM

                    MOV         E,A

                    XCHG                          ;подготовкавходных

MVI           D,N             ;данных для ПП деления

CALL        DIV

                    MOV         A,H

                    STA           REZULT 

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

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

DIV:          

                    MOV         A,D

                    MVI           C,0

SDVIG:                         ;подготовка делителя - сдвиг его до старшего разряда

ANI            10000000B

                    MOV         A,D

                    JNZ           DELENIE

                    RLC

                    MOV         D,A

                    JMP           SDVIG

DELENIE:

                    CMP          H

                    JC              CARRY

                    RRC          

 9.1.

                    JNC           DELENIE

                    MOV         B,A

                    MOV         A,C

                    RRC

                    ORA          B

                    MOV         C,A

                    ANI            01111111B

                    MOV         B,A

                    XRA          C

                    MOV         C,A

                    MOV         A,B      

CARRY:

                    CMA

                    MOV         B,A

                    MOV         A,C

                    CMA

                    MOV         C,A

                    INX            B

                    DAD           B

                    MOV         A,L

                    CMA

                    CMP          C

                    MOV         A,B

                    CMA

                    INR            A

                    JNC           DELENIE                   

                    RET

10.1. Из массива расположенного между адресами ADDR1 и ADDR2 (ADDR1 < ADDR2), выбрать числа (байты/слова), превышающие POROG, и просчитать их количество. Фрагмент оформить как подпрограмму, результат передать как параметр подпрограммы.

ZAD10:

LXI            SP,STPOINT

                    LXI            H,ADDR1

                    MVI           B,ADDR2-ADDR1

                    MVI           A,40

NEXT10:

                    MOV         M,A           

                    INR            A

                    INX            H

                    DCR           B

                    JNZ           NEXT10

                    LXI            H,ADDR1

                    MVI           B,ADDR2-ADDR1

                    CALL        PODPR10

PODPR10:

LOOP10:

                    MOV         D,M

                    MVI           A,POROG1

                    CMP          D

                    JNC           NO_CARRY10

                    LDA           COUNT1

                    INR            A

                    STA           COUNT1

NO_CARRY10:

                    INX            H

                    DCR           B

                    JNZ           LOOP10

                    LDA           COUNT1

                    MOV         D,A

RET

11.1. Вычислить контрольную сумму буфера BUF1 размером 256 байт. Суммирование выполнить байтами по модулю 65536.

ZAD11:                                                                                                       ;!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

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

INIT11:

        LXI    H,BUF11

                    MVI           B,0H

                    MVI           A,0FH

LOOP_INIT11:

                    RLC          

                    MOV         M,A

                    INX            H

                    DCR           B

                    JNZ           LOOP_INIT11

M1:           

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

                    LXI            H,BUF11