![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы
![]() |
Поиск в этой теме
![]() |
![]() |
#1 |
Новичок
Джуниор
Регистрация: 26.12.2012
Сообщений: 1
|
![]()
Помогите. Не работает умножение матриц(2x3 на 3x2). так же не понимаю, как сделать правильный вывод в консоль полученной матрицы. masm и link не пишет никаких ошибок, но при запуске написано: "lab.exe не является приложением Win32".
stack segment dw 256 dup(?) stack ends data segment matrA db "314271$" qlmatrA db 2 qcmatrA db 3 matrB db "159314$" matrR db "0000$" data ends code segment assume cs: code, ds: data, ss: stack lea bp, [matrA] mov ah, [qlmatrA] mov al, [qcmatrA] lea di, [matrB] lea si, [matrR] call MatrProd mov ah,4ch int 21h MatrProd: push cx push bp push di push si mov cx, 0 mov cl, ah mMatrProdLoopRows: push cx mov cx, 0 mov cl, ah push di mMatrProdLoopColumns: call CalcResultElement mov [si], dx inc si inc di loop mMatrProdLoopColumns pop di pop cx push ax mov ah, 0 add bp, ax pop ax loop mMatrProdLoopRows pop si pop di pop bp pop cx ret CalcResultElement: push bx push cx push bp push di mov cx, 0 mov cl, al mov dx, 0 mCalcResultElementLoopColumns: push ax mov ax, 0 mov al, byte [bp] mov bx, 0 mov bl, byte [di] push dx mul bx pop dx add dx, ax pop ax inc bp push ax mov al, ah mov ah, 0 add di, ax pop ax loop mCalcResultElementLoopColumns pop di pop bp pop cx pop bx ret code ends |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Asm-masm, перевести число в -1 степень | Krasi | Помощь студентам | 12 | 28.01.2012 08:54 |
Умножение матриц | Macmeprag | Помощь студентам | 3 | 08.10.2011 15:58 |
Умножение матриц Си | Slame | Помощь студентам | 4 | 16.12.2010 14:34 |
Умножение матриц | Alyonka_v | Помощь студентам | 2 | 18.08.2009 21:51 |