From 143f34d941f32e0808fc9344d4c4126ff530d64a Mon Sep 17 00:00:00 2001 From: Andrew Date: Thu, 22 Oct 2020 21:03:24 +0400 Subject: =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8=D0=BB=20=D1=80?= =?UTF-8?q?=D0=B5=D1=88=D0=B5=D0=BD=D0=B8=D1=8F=20=D0=B2=D1=82=D0=BE=D1=80?= =?UTF-8?q?=D0=BE=D0=B3=D0=BE=20=D1=81=D0=B5=D0=BC=D0=B5=D1=81=D1=82=D1=80?= =?UTF-8?q?=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- sem2/lab3/Dump.asm | 80 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 80 insertions(+) create mode 100644 sem2/lab3/Dump.asm (limited to 'sem2/lab3/Dump.asm') diff --git a/sem2/lab3/Dump.asm b/sem2/lab3/Dump.asm new file mode 100644 index 0000000..93092f3 --- /dev/null +++ b/sem2/lab3/Dump.asm @@ -0,0 +1,80 @@ +;---------------------------------------- +OutChar macro char ;макрос вывода символа +local l1,l2,loopCX +push cx +mov cx,2 +mov bh,char +mov al,bh +shr al,04 + +loopCX: + cmp al,09h + jbe l1 + add al,37h + jmp l2 + l1: + add al,30h + l2: + mov es:[si],ax + mov al,bh + and al,00001111b + add si,2 +loop loopCX + +add di,01h +pop cx +endm +;---------------------------------------- +ClrScr macro ;макрос очистки экрана +push ax +push bx +push cx +push dx +mov ah,06h ;AH 06 (прокрутка) +mov bh,07 ;Нормальный атрибут (черно/белый) +mov cx,0000 ;Верхняя левая позиция +mov dx,184Fh ;Нижняя правая позиция +int 10h ;Передача управления в BIOS +pop dx +pop cx +pop bx +pop ax +endm +;---------------------------------------------- + +.model small +.stack 100h +.data +.code +start: +.486 +mov ax,@DATA +mov ds,ax + +mov ax,0b800h +mov es,ax ;в es начало видеопамяти +mov si,0 ;смещение относительно начала видеопамяти +mov di,0 ;счетчик байтов +mov ah,7h ;атрибуты выводимых символов +mov cx,offset exit +sub cx,offset start ;адрес конца проги - адрес начала = ее размер!!! +ClrScr + +CXne0: + mov al,cs:[di] + OutChar al +loop Cxne0 + +; input: +; MOV dx,1900h +; INT 10h + + ; MOV ah,07h + ; INT 21h + + + +exit: +mov ax,4C00h +int 21h +END start -- cgit v1.2.3