Форум программистов
 
О проблемах, например, с регистрацией пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail, а тут можно восстановить пароль.

Вернуться   Форум программистов > Низкоуровневое программирование > Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM
Регистрация

Восстановить пароль
Повторная активизация e-mail


Ответ
 
Опции темы
Старый 21.06.2017, 21:20   #1
slepi
Пользователь
 
Регистрация: 02.04.2017
Сообщений: 10
По умолчанию списки 8086

программа просит ввести возраст и если он в диапазоне 16-20, первое, как ввести двузначное и больше число,есть команда ввода с клавиатуры, в al идет код ASCII, но это только одно число, в дальше? в второе досбокс выдает ошибку:
(6)missing or unreachable CS (вот эта строчка STUDENT: R1<15,0010h>)
и предупреждение:
(25) operand types must match (вот эта строчка stud1: mov dx,STUD_MSSG)

Код:
R1 struc
AGE db ?
NEXT dw ?
R1 ends
Dseg segment
STUDENT: R1<15,0010h>
         ORG 10h
         R1<17,0020h>
         ORG 20h
         R1<21,0000h> 
STUD_MSSG db 'enter age 16-20$'
ERR_STUD_MSSG db 'invalid age$'                 
FLAG db 0 
dseg ends

sseg segment stack
db 100h dup (?)
sseg ends

cseg segment
assume cs:cseg,ds:dseg,ss:sseg
 start:
        mov ax,dseg
        mov ds,ax
stud1:  mov dx,STUD_MSSG
        mov ah,9h
        int 21h
        mov ah,1h
        int 21h
        lea si,STUDENT
serch:  cmp [si].NEXT,0
        jz end1
        cmp [si].AGE,al
        je yes
        mov si,[si].NEXT
        jmp serch
yes:
        mov FLAG,1
        mov si,[si].NEXT
        jmp serch               
end1:      
        mov ah,4ch
        int 21h
        
cseg ends
end start
slepi вне форума Ответить с цитированием
Старый 21.06.2017, 22:18   #2
waleri
Старожил
 
Регистрация: 13.07.2012
Сообщений: 6,217
По умолчанию

Цитата:
Сообщение от slepi Посмотреть сообщение
mov dx,STUD_MSSG
Вроде должно быть:
Код:
mov dx,offset STUD_MSSG
waleri вне форума Ответить с цитированием
Старый 21.06.2017, 22:30   #3
slepi
Пользователь
 
Регистрация: 02.04.2017
Сообщений: 10
По умолчанию

точно, или lea, а по второму?
slepi вне форума Ответить с цитированием
Старый 21.06.2017, 22:38   #4
slepi
Пользователь
 
Регистрация: 02.04.2017
Сообщений: 10
По умолчанию

нашел, там : лишнее, а вот по введению двузначных чисел так и не придумал.
и просто вопрос знатокам, можно ли добавлять списки или удалять? как в С например, и часто ли их используют в быту, так сказать?
slepi вне форума Ответить с цитированием
Ответ

Здесь нужно купить рекламу за 20 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru
Без учёта ботов - 20000 человек в день, 350000 в месяц.

Опции темы


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Assembler 8086 eleldar Фриланс 3 19.07.2012 15:32
Ассемблер 8086 KateMM Фриланс 2 28.05.2012 21:48
8086 Mudrujja Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 0 01.03.2012 16:29


Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru
Пеллетный котёл Emtas
котлы EMTAS
Здесь нужно купить рекламу за 7 тыс руб в месяц! )
пишите сюда - alarforum@yandex.ru
ИКС 840