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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 05.06.2013, 21:25   #1
Lers
Пользователь
 
Регистрация: 12.12.2012
Сообщений: 33
Вопрос ошибки при компиляции

У вещественной матрицы А размерности nxn найти произведение элементов, принадлежащих отрезку [1, 10].
Код:
model small
extrn input:near
extrn output:near
.stack 256h
	;dw		50 dup('?')
.data
	n		dw	?
	m		dw	?
	sum		dw	0
	mas		dw	10 dup(10 dup('?'))
	mes1	db 	'Vvedite kolichestvo strok: $'
	mes6	db	'Ishodniy massiv: $'
	mes7	db	'Summa: $'
	mes3	db	'Vvedite element massiva: $'
	mes4	db	10,13,'$'
	mes5	db	' $'

.code
main proc near
	mov dx, @data
	mov ds, dx
	lea dx, mes1
	mov ax, 0900h
	int 21h
	call input
	mov n, ax
	mov cx, n
	lea si, mas
vvod1:
	push cx
	mov cx, n
vvod2:
	mov ax, 0900h
	lea dx, mes3
	int 21h
	push cx
	push si
	call input
	pop si
	pop cx
	mov [si], ax
	add si, 2
	loop vvod2
	pop cx
	loop vvod1
	
	lea dx, mes6
	mov ax, 0900h
	int 21h
	lea dx, mes4
	mov ax, 0900h
	int 21h
	
	mov cx, n
	lea si, mas
vivod1:
	push cx
	mov cx, n
vivod2:
	push cx
	push si
	mov ax, [si]
	call output
	pop si
	pop cx
	add si, 2
	mov ax, 0900h
	lea dx, mes5
	int 21h
	loop vivod2
	mov ax, 0900h
	lea dx, mes4
	int 21h
	pop cx
	loop vivod1
	
	mov ax,1
	lea si, mas
	mov cx, n
poisk1:
	push cx
	mov cx, n
poisk2:
	mov bx, 1
	cmp [si], bx
	jl m1
        mov bx, 10
	cmp [si], bx
        jg m1
	
	mov dx,[si]

	imul dx 
m1:	
	add si, 2
	loop poisk2
	pop cx
	loop poisk1
	
	lea si, mas
	mov cx, n
vivod3:
	;mov sum,ax
	;lea dx, mes7
	;mov ax, 0900h
	;int 21h

	;mov ax, sum
	call output

	mov ax, 4c00h
	int 20h
RET
main endp
end main
Код:
model small
public input
.code
input proc near
    mov ah,0ah
    xor di,di
    mov dx,offset buff 
    int 21h 
    mov dl,0ah
    mov ah,02
    int 21h 
	
    mov si,offset buff+2
    cmp byte ptr [si],"-" 
    jnz ii1
    mov di,1 
    inc si   
ii1:
    xor ax,ax
    mov bx,10  
ii2:
    mov cl,[si] 
    cmp cl,0dh 
    jz endin
    
    cmp cl,'0'  
    jl er
    cmp cl,'9'  
    ja er
 
    sub cl,'0'
    mul bx     
    add ax,cx  
    inc si    
    jmp ii2    
 
er:   
    mov dx, offset error
    mov ah,09
    int 21h
    int 20h

endin:
    cmp di,1 
    jnz ii3
    neg ax  
ii3:
    retn
error db 'incorrect number$'
buff    db 6,7 Dup(?)
input endp
end
Код:
model small
public output
.code
output proc near     
   test    ax, ax
   jns     oi1
   mov  cx, ax
   mov     ah, 02h
   mov     dl, '-'
   int     21h
   mov  ax, cx
   neg     ax
oi1:  
    xor     cx, cx
    mov     bx, 10 ; основание сс. 10 для десятеричной и т.п.
oi2:
    xor     dx,dx
    div     bx
    push    dx
    inc     cx
    test    ax, ax
    jnz     oi2
    mov     ah, 02h
oi3:
    pop     dx
    add     dl, '0'
    int     21h
    loop    oi3
    retn
output endp 
end
P.S. программа рабочая 100%, но выдает ошибку:
Undefined symbol 'INPUT' in module LAB4.ASM
Undefined symbol 'OUTPUT' in module LAB4.ASM
компилю Dosbox 0.74 на win7 x64
Lers вне форума Ответить с цитированием
Ответ


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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ошибки при компиляции программы lutdan Общие вопросы Delphi 3 22.03.2013 09:08
Ошибки при компиляции sarkolk Общие вопросы C/C++ 27 22.08.2012 18:54
Ошибки при компиляции Tinny Общие вопросы C/C++ 7 30.06.2011 10:00
Ошибки при компиляции vader2 Общие вопросы Delphi 11 29.09.2010 16:33
ошибки при компиляции |{ot Общие вопросы Delphi 14 02.08.2008 01:20