0 / 0 / 0
Регистрация: 09.01.2014
Сообщений: 14
1

Пмогите с прогой плз

11.10.2014, 18:21. Показов 365. Ответов 2
Метки нет (Все метки)

Задание такое: Есть массив из 12 элементов. Создать другой массив, в который будут входить элементы исходного, которые имеют значение 128, прекратить работу если таких элементов будет 5 или больше и вывести соответствующее сообщение.

Мой код такой:
Assembler
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
.686
.model  flat,stdcall 
option casemap:none
include \masm32\include\windows.inc ; файли структур, констант …
include \masm32\include\kernel32.inc ; системні функції застосувань…
include \masm32\include\\user32.inc ; файли інтерфейсу …
includelib \masm32\lib\user32.lib
includelib \masm32\lib\kernel32.lib
.data        
mas1 dw 1,9,0,7,1,9,128,128,128,128,128,128
mas2 dw 5 dup(?)
len equ $-mas1
len1 equ $-mas2
titl db" Результат ",0 ; назвавікна
szTest db 'В массиве элементов со значением 128 больше пяти',0
szTest1 db 'Все элементы со значением 128 перемещены во второй массив',0
buf db ?,0 ; буфер виведення повідомлення
.code
_start:
xor edx,edx; счетчик чисел
xor edi,edi
lea esi,mas1; завантаження адреси масиву mas1
mov ecx,[esi]; завантаження лічильника кількістю чисел масиву
.IF ecx==128
lea edi,mas2
add esi, 2
.IF esi >= 5
invoke MessageBox, 0, offset szTest, 0, MB_OK
.ENDIF
.IF esi >= 5
invoke MessageBox, 0, offset szTest1, 0, MB_OK
.ENDIF
ret 
end _start
Проблема в том что даже когда элеметов со значением 128 больше 5 то всё равно выводит что массив заполнен
Помогите исправить плз
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
11.10.2014, 18:21
Ответы с готовыми решениями:

Помогите с прогой плз
Короче задача на делфи сделать вот условия: Составить программу занесения в динамическую память...

пмогите разобратся...
хочу попытатся сам решить задачу но боюсь что буду делать несавсем то что нужно ..задача из...

Пмогите с выводом на на принтер
ситуация такая: Есть программа на ВБ, она считает по каким то введённым данным какие то щзначения...

Пмогите допилить програмку
#include <iostream> using namespace std; int main() { struct list { int data; list...

2
Ушел с форума
Автор FAQ
15554 / 7372 / 979
Регистрация: 11.11.2010
Сообщений: 13,312
11.10.2014, 18:49 2
Assembler
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
     lea esi,mas1
     lea edi,mas2
     mov ebx,5
     mov ecx,12
@1: lodsw
     cmp ax,128
     jne @2
     stosw
     dec ebx
     jz @3
@2:loop @1
     invoke MessageBox, 0, offset szTest1, 0, MB_OK
     jmp @4
@3:invoke MessageBox, 0, offset szTest, 0, MB_OK
@4:...
0
0 / 0 / 0
Регистрация: 09.01.2014
Сообщений: 14
12.10.2014, 01:30  [ТС] 3
Спасибо)))))
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
12.10.2014, 01:30
Помогаю со студенческими работами здесь

Пмогите с Excel,не могу сдать?
Задание • Составить самостоятельно таблицу 1 (строк-30, столбцов- 8 ). • С помощью функции...

Пишу прогу Таймер. Пмогите пожалуйста разобраться
Нужно чтобы пользователь задавал с через компоненты edit время(часы, минуты, секунды) и начинается...

Пмогите с провисанием тактирования двух SPI одним сигналом
Задача у меня такая - протоколирование двух однобитных потоков данных. устройство работу которого...

Помогите с прогой
Не понимаю почему перестала запускаться.


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru