Publish your project for free and start receiving offers from freelance contractors in serveral minutes after publication!
15 $

Нужно подправить код в Turbo Assembler

project expired


Applications 1

Only registered users can view attachments.
The Client doesn't want to make prepayment? Payment via Safe will help to avoid potential fraud.
  1.  10 $
    145    1  0

    Надеюсь, эти подпрограммы никогда не будут использованы в реальной системе ;))) Ибо всё, что там есть сейчас и будет после доработок - подгонка под результат.

    Вот решение:
    ...
    ;===========================
    XOR BX, BX
    BL1:
    XOR CX,CX
    XOR SI, SI
    BL2:

    ;------------------------------------------
    ; Этими командами "пропускаем" i-й столбец
    ;
    CMP CX, i
    JNE BL3
    INC CX
    BL3:
    ;------------------------------------------

    MOV AX, BX
    MUL M ; AX := AX * M (на кол-во столбцов)
    ADD AX,CX
    SAL AX,1 ; AX := AX * 2
    MOV DI, AX ; в BX - номер строки, в CX - номер столбца
    MOV DX,A[DI] ; DX := A[AX, CX]

    ;-------------------------------------------
    ; Эти команды введены для пропуска строки
    ; CMP BX, i ; номер строки = i????
    ; JE BL8 ; да - к BL8
    ;-------------------------------------------

    MOV DI, SI
    SAL DI, 1
    MOV B[DI], DX
    INC SI
    CMP SI, M
    JL BL8

    LEA BP, B
    MOV CX, SI

    DEC CX ; нужно напечатать на 1 элемент меньше, чем длина строки исходного массива
    CALL PRINTMAS


    BL8:
    Inc CX
    cmp CX, M
    jl BL2

    INC BX
    CMP BX, N
    JL BL1

    mov ah,1
    int 21h
    Mov AH,4CH
    Int 21h
    MAIN ENDP

    ...


Project published
9 years ago
182 views