Форум программистов, компьютерный форум, киберфорум
Наши страницы
Assembler, MASM, TASM
Войти
Регистрация
Восстановить пароль
 
Kazax_Misha
4 / 4 / 3
Регистрация: 15.04.2013
Сообщений: 228
1

Что делаю неправильно в работе со структурой?

29.12.2014, 20:32. Просмотров 241. Ответов 0
Метки нет (Все метки)

Не пойму, в чем ошибка.

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
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
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
masm
model small
.stack 100h
 
worker struc                 ;информацияао сотруднике
nam db 15 dup (' ')        ;имя
lastnam db 15 dup (' ')   ; фамилия
age db 10 dup (' ')      ; возраст
worker ends
 
.data
myString db 15
pole db (?)
N=1                               ; размерность массива
 
StrWork worker <>
sotr worker N dup (<>)
mes1 db 'Vvedite 3 elementа strukturi','$'
mnam db 10,13,'Vvedite name- $'
mlastnam db 10,13,'Vvedite lastname- $ '
mage db 10,13,'Vvedite age- $'
 
mabzac db 10,13,'$' 
mes3 db ' ','$' 
mes4 db 10,13,'Name         Lastname        Age',13,10,'$' 
;=======================================================
 
 
.code   
      assume ds:@data, es:@data
start:
      mov AX,@data
      mov DS,AX
      mov es,ax
 
Vvod:
   mov dx,offset mes1
   mov ah,09h                         ;Функция Dos вывода сообщения на
   int 21h
   mov cx,N
   mov bl,type worker 
   lea di,sotr
 
cykl2:
    push cx 
 
    mov dx,offset mnam
    mov ah,09h                         ;Функция Dos вывода сообщения на
    int 21h 
    xor ax,ax
    xor dx,dx
    mov ah,0ah
    mov dx,offset myString
    int 21h   
    mov ax,word ptr [myString+1]
    mov cl,al
    mov ah,00h
    mov si,ax      
mm1:
    mov [myString+si+2],' '       
    inc si
    cmp si,0dh
jne mm1
 
    cld                     
    lea si,myString+2         
    mov cl,0Fh                       ;add cl,02h 
rep movs [di].nam,myString+2          
 
     
 
    mov dx,offset mlastnam
    mov ah,09h                         
    int 21h
    xor ax,ax
    xor dx,dx
    mov ah,0ah
    mov dx,offset myString
    int 21h   
    mov ax,word ptr [myString+1]
    mov cl,al
    mov ah,00h
    mov si,ax
    mov [myString+si+2],'$'       
    cld
    lea si,myString+2
    add cl,01h 
rep movs [di].lastnam,myString+2      
 
mm2:
    mov [myString+si+3],' '       
    inc si
    cmp si,0dh
jne mm2
 
    cld
    lea si,myString+3
    mov cl,0Fh                       ;add cl,03h 
rep movs [di].age,myString+3  
 
 
 
mov dx,offset mage
    mov ah,09h                 ;Функция Dos вывода сообщения на
    int 21h 
    xor ax,ax
    xor dx,dx
    mov ah,0ah
    mov dx,offset myString
    int 21h
    mov ax,word ptr [myString+1]
    mov cl,al
    mov ah,00h
    mov si,ax
 
cld
    lea si,myString+3
    add cl,0Fh                       ;add cl,03h 
rep movs [di].age,myString+2  
    
 
;=================================================
    pop cx 
    dec cx  
    mov ax,N
    sub ax,cx
    mov bx, type worker
    mul bl
    lea di,sotr 
    add di,ax  
 
    jcxz Vivod
    jmp cykl2
 
Vivod:
    lea dx,mes4
    mov ah,09h
    int 21h
    mov cx,N
    lea di,sotr
 
cykl3:
    mov dx,di
    mov ah,09h                                         
    int 21h         
 
    xor dx,dx
    mov dx,offset mabzac
    mov ah,09h                                         
    int 21h
 
    add di,bx       ;к следующей структуре в массиве mas_sort
    loop cykl3
 
    mov AX,4C00h
    int 21h
      
end start

Искомый результат - вывести три элемента Имя Фамилия Возраст (со значениями) . Выводит данные для имени и фамилии, но никак не для возраста. Что делаю неправильно?

Что делаю неправильно в работе со структурой?
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.12.2014, 20:32
Ответы с готовыми решениями:

Что я неправильно делаю?
filcs=saveFileDialog1.FileName; fileexe=@&quot;C:\prog.exe&quot;; richTextBox1.SaveFile(filcs);...

Что я делаю неправильно?
Добрый день! Дано: запрос 'Otchet', отчет 'Klient', форма 'frmData' с 2-мя полями даты (Data1 и...

что делаю неправильно?
#include &lt;iostream&gt; using namespace std; int main() { int urok=45; int per1=5; int...

Что я неправильно делаю с созданием классса?
В общем, объявил глобально класс и переменную этого класса, далее пытаюсь работать с полями и...

Запросы неправильно считают. Что делаю не так?
Добрый день! Пожалуйста, помогите. Раньше мне не приходилось иметь дел с базами данных. Сейчас...

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.12.2014, 20:32

Подружить __autoload и namespace – что я делаю неправильно?
Доброго времени суток! Есть три файла. Версия php 5.4.4. Листинг небольшой (приведён ниже). ...

Что я неправильно делаю при реализации поиска?
Мучаюсь уже второй день. Подскажите что не так. Задача сделать поиск в справочнике. Все делаю по...

Мне нужно копировать таблицу с данными в БД Access C++. Что я делаю неправильно?
void __fastcall TForm1::BitBtn1Click(TObject *Sender) { ADOQuery2-&gt;Open();...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru