Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

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

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

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 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,493
По умолчанию

Цитата:
Сообщение от 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 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


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