Слушайте , можете помочь вот задание , код ниже , что вообще происходит тут , я даже задание не понял, можете помочь
Образовать строку из исходной, повторив i и элемент 1 раз, 1+1-й элемент 1+1 раз, 1+2 и элемент - 1.2
раза.
Андрей Вязев, сегодня в 22:13
#define _CRT_SECURE_NO_WARNINGS
#include <iostream>
#include <stdio.h>
int main()
{
setlocale(LC_ALL, "rus");
char source[30] = "";
scanf("%[^\n]s", source); /* [^\n] - спецификатор, позволяющий считывать строку не до пробела, а до «\n» - символа перехода на новую строку */
char output[465] = "";
int k = 0; // счетчик цикла в первой строке
int i = 0; // номер, начиная с которого символы надо повторять
int n = 1; // сколько раз повторять символы
int k2 = 0; // счетчик цикла во второй строке
scanf("%hd", &i);
if (i > 32767)
{
printf("Введён отрицательный номер\n");
return 0;
}
_asm
{
COPY:
XOR ESI, ESI;
XOR EDX, EAX;
MOV EBX, k;
MOV ESI, k2;
MOV DL, source[EBX];
CMP DL, '\0';
JE EXIT;
MOV output[ESI], DL;
MOV EAX, k;
CMP EAX, i;
JGE REPEAT;
GBACK:
INC k;
INC k2;
JMP COPY
REPEAT :
MOV ECX, n;
RPT:
INC k2;
MOV ESI, k2;
MOV DL, source[EAX]
MOV output[ESI], DL;
LOOP RPT
INC n;
JMP GBACK
EXIT :
}
printf("\"%s\"", output);
return 0;
}