С Новым годом! Форум программистов, компьютерный форум, киберфорум
Assembler, MASM, TASM
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
0 / 0 / 0
Регистрация: 05.07.2011
Сообщений: 53

Объясните по простому как работает программа?

29.05.2012, 18:05. Показов 1049. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Дано 32-разрядное слово 86СА Е7В3H. Сформировать массив целых чисел, отражающих количество 1 в последовательно следующих группах 1.
Что означает "Сформировать массив целых чисел, отражающих количество 1 в последовательно следующих группах 1"?
как здесь работает команда DIV BX . что на что делится?
Что означает это строчка:mov word ptr [si+bx], dx
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
program Las
uses crt;
var t: integer;
    pa: pointer;
    a: array[1..32] of integer;
begin
pa := @a;
asm
    LDS     si,pa      {ssilka na 1 element massiva}
    mov     ax, 0E7B3h {v ax mladshee slovo. 0 potomu 4to ya4inaetca s bukvi}
    xor     cx, cx     {o4istka}
    mov     bx, 2      {osnovanie sistemi s4isleniya}
@@2:
    xor     dx,dx
    div     bx          {delim}
    push    dx          {ostatok v stek}
    inc     cx
 
    test    ax, ax      {povtoryaem pok ne ostanutsya 0}
    jnz     @@2
 
    mov ax, 86CAh       {v ax starshee slovo}
@@9:
 
    xor     dx,dx
    div     bx
 
    push    dx
    inc     cx
 
    test    ax, ax
    jnz     @@9
 
    xor bx,bx           {o4ictka}
    xor ax,ax
    xor dx, dx
    mov dx, 0
    @@1:
    pop ax              {dostaem iz steka}
    cmp ax, 0           {sravnivaem s 0}
    jle @@5             {esli 0}
    jmp @@6             {inache}
 
@@5: mov word ptr[si+bx], dx   {pologzit' s4etchik 1 v massiv}
     xor dx, dx
     inc bx
     inc bx
     jmp @@7            {ciklim}
 
@@6: inc dx             {uvelichim s4etchik 1}
     jmp @@7            {cikl}
 
@@7: loop @@1           {esli poslednya 1 to i ee s4itaem}
     cmp dx, 0
     mov word ptr [si+bx], dx
end;
clrscr;
for t:=1 to 32 do write(a[t], ' ');
readln;
end.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
29.05.2012, 18:05
Ответы с готовыми решениями:

Объясните как работает программа
В учебнике Шилдта встретил программу, но не могу понять как работает самый нижний цикл for что отображает кривую распределения. Почему он...

Объясните как работает программа
Если символ: не пробел, не новая строка, не табуляция. То in присваивается no(все слова). Дальше я вообще не понял как программа работает....

Объясните как работает программа
CPerson& operator=(const CPerson t) что значит &operator и const cperson return *this; что это значит bool operator<(const CPerson...

4
 Аватар для Troll_Face
608 / 406 / 8
Регистрация: 26.04.2012
Сообщений: 2,065
29.05.2012, 18:35
Цитата Сообщение от Rus7am Посмотреть сообщение
как здесь работает команда DIV BX . что на что делится?
ах делится на bx, то бишь
Цитата Сообщение от Rus7am Посмотреть сообщение
mladshee slovo
на 2

Цитата Сообщение от Rus7am Посмотреть сообщение
то означает это строчка:mov word ptr [si+bx], dx
положить dx по адресу si+bx
0
 Аватар для _lucius_
391 / 179 / 2
Регистрация: 14.03.2012
Сообщений: 443
29.05.2012, 19:30
Цитата Сообщение от Fatal Error Посмотреть сообщение
ах делится на bx, то бишь
поправочка, dx:ax делится на bx, поэтому dx и обнуляется перед div'ом. Частное кладется в ax, а остаток в dx.
1
 Аватар для Troll_Face
608 / 406 / 8
Регистрация: 26.04.2012
Сообщений: 2,065
29.05.2012, 19:44
Цитата Сообщение от _lucius_ Посмотреть сообщение
dx:ax делится на bx
чот упустил
0
0 / 0 / 0
Регистрация: 05.07.2011
Сообщений: 53
29.05.2012, 20:23  [ТС]
Что означает "Сформировать массив целых чисел, отражающих количество 1 в последовательно следующих группах 1"?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
29.05.2012, 20:23
Помогаю со студенческими работами здесь

Объясните, как работает программа
Что нужно вводить , чтобы проверить работу программы? var a:array of integer; t,min,x,y,u,i,j,k,l,m,n,cost:longint; b,c:array...

Объясните как работает программа
Данная программа делает подсчёт символов. Помогите разобраться как она работает. Сижу смотрю - и ступор просто #include...

Объясните как работает программа
Цель задачи была: Возведение X в 59 степень за самое малое количество шагов. 1. Ввод (X); 2. X2 = X*X; 3. X4 = X2*X2; ...

Объясните, как работает программа
Підскажіть будьласка як працює програма. #include "stdafx.h" #include<iostream> #include<conio.h> #include<math.h> ...

Объясните, как работает программа
Программа создает меню в консоли, там и вывод анимации и вычисление интеграла и т.д. В условиях указаны "code == 72, code == 13",...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит токи на L и напряжения на C в установ. режимах до и. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Изучаю kubernetes
lagorue 13.01.2026
А пригодятся-ли мне знания kubernetes в России?
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru