Функция
ArrayCopyEx копирует элементы из первого массива во второй массив. Если количество элементов = 0, функция завершает работу без изменений. Функция
ArrayCopyEx автоматически выравнивает стек на 6 байт.
Параметры:- Указатель на первый массив (источник).
- Указатель на второй массив (назначение).
- Количество элементов для копирования.
Возвращаемое значение:- Функция не возвращает значение.
Состояние флагов:- Функция не изменяет состояние флагов.
Особенности:- Функция не изменяет значения регистров.
- title Автор: Довгополов Евгений Сергеевич
- .286C
- .model small
- .stack 100h
- data segment public
- ____array1_dw _23, 54, 83, 91
- ____arrlen equ ($-array1) / 2
- ____array2_dw _arrlen dup(?)
- ____output db__"Скопированный массив: \0"
- ____fmtout db__"[%d] \0"
- data ends
- code segment public
- ____assume _ds:data, cs:code
- ____include Handyfar.inc
- ____include Handymac.inc
- ____main proc
- ________call____SetDataSegment
- ________push____arrlen
- ________pushs___es:[array2]
- ________pushs___ds:[array1]
- ________call____ArrayCopyEx
- ________pushs___ds:[output]
- ________call____WriteStringEx
- ________loopcnt_4
- ________leabx___ds:[array2]
- ________xor_____si, si
- ____PrintArrayLoop:
- ________push____word ptr[bx+si]
- ________leaax___ds:[fmtout]
- ________call____PrintFormatString
- ________incw____si
- ________loop____PrintArrayLoop
- ________add_____sp, 8
- ________push____0
- ________call____ExitProcessEx
- ____main endp
- code ends
- end main