обьясните push ds mov ah, 3 mov bh, 0 int 10h mov dl, 39 mov ah, 2 mov bh, 0 int 10h mov ds, cs:null_word mov ah, 9 mov dx, offset aOkrujenie int 21h pop ds jmp exit что делает вот етот код.....
берем описание прерывания INT 10 у ральфа брауна и фтыкаем: Про функцию AH=3: Про функцию AH=2: Про досовскую функцию печати на экран (INT 21/AH=9):
Нехитрым размышлением получаем, что этот код перемещает курсор на 39-й столбец и выводит на экран строчку по адресу aOkrujenie из сегмента, лежащего в CS:[NULL_WORD]
а что означают ети строчки mov ax, seg dseg mov ds, ax assume ds:dseg mov bx, seg seg002 nop mov ax, es sub bx, ax mov ah, 4Ah int 21h mov cs:null_word, ds mov ah, 9 mov dx, 0 int 21h
--------D-214A------------------------------- INT 21 - DOS 2+ - RESIZE MEMORY BLOCK AH = 4Ah BX = new size in paragraphs ES = segment of block to resize Return: CF clear if successful CF set on error AX = error code (07h,08h,09h) (see #01680 at AH=59h/BX=0000h) BX = maximum paragraphs available for specified memory block Notes: under DOS 2.1-6.0, if there is insufficient memory to expand the block as much as requested, the block will be made as large as possible DOS 2.1-6.0 coalesces any free blocks immediately following the block to be resized SeeAlso: AH=48h,AH=49h,AH=83h
Axotnik Слей это и не задавай больше таких вопросов http://www.cs.cmu.edu/~ralf/interrupt-list/inter61a.zip http://www.cs.cmu.edu/~ralf/interrupt-list/inter61b.zip http://www.cs.cmu.edu/~ralf/interrupt-list/inter61c.zip http://www.cs.cmu.edu/~ralf/interrupt-list/inter61d.zip