汇编—双重循环—计算4*4矩阵与4*1矩阵乘法
2012-11-16 00:58
260 查看
题目要求:
将一个4*4的矩阵与一个4*1的矩阵相乘,结果存在相应的存储单元
注:这里还增加了输出操作
这个代码在写的过程中遇到了很多问题,由于时间原因先不叙述了,找时间补上再,感兴趣的童鞋可以关注修改
写完之后,觉得把矩阵结构限制了,很不爽,所以就想写个适合于所有矩阵的,在稍后的博客里一起贴上~
参考代码:
将一个4*4的矩阵与一个4*1的矩阵相乘,结果存在相应的存储单元
注:这里还增加了输出操作
这个代码在写的过程中遇到了很多问题,由于时间原因先不叙述了,找时间补上再,感兴趣的童鞋可以关注修改
写完之后,觉得把矩阵结构限制了,很不爽,所以就想写个适合于所有矩阵的,在稍后的博客里一起贴上~
参考代码:
DATA SEGMENT D1 DB 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16 D2 DB 4,2,1,3 D3 DB 4 DUP(?) D4 DB 0 FOUR DW 4 DATA ENDS CODE SEGMENT ASSUME DS:DATA,CS:CODE START: MOV AX,DATA MOV DS,AX LEA BX,D3 L2: MOV AL,D4 ;外层循环开始 AND AX,00FFH MUL WORD PTR FOUR LEA SI,D1 ADD SI,AX LEA DI,D2 MOV CX,0 MOV DL,4 L3: MOV AL,[SI] ;内层循环开始 MUL BYTE PTR [DI] ADD CL,AL INC SI INC DI DEC DL JNZ L3 ;内层循环 MOV [BX],CL INC BX INC BYTE PTR D4 CMP BYTE PTR D4,4 JNZ L2 ;外循环 LEA BX,D3 MOV CX,4 ;输出操作 L4: MOV DL,0AH MOV AH,2 INT 21H MOV DL,0DH MOV AH,2 INT 21H MOV DL,[BX] ;高位输出 SHR DL,1 SHR DL,1 SHR DL,1 SHR DL,1 AND DL,0FH; CMP DL,0AH JC L5 ADD DL,7 L5: ADD DL,30H MOV AH,2 INT 21H MOV DL,[BX] ;低位输出 AND DL,0FH CMP DL,0AH JC L6 ADD DL,7 L6: ADD DL,30H MOV AH,2 INT 21H INC BX LOOP L4 MOV AH,4CH INT 21H CODE ENDS END START
相关文章推荐
- 华为OJ(矩阵乘法计算量估计)
- 转置矩阵的分块并行乘法(C语言实现),计算矩阵C[rawn][rawn]=A[rawm][rawn]'*B[rawm][rawn],子块大小为S*T,其算法实现原理参加本代码的附件。
- 操作系统实验——串行、多线程和线程池三种方式计算矩阵乘法
- 分布式缓存法计算矩阵乘法
- Strassen矩阵乘法 + 快速计算乘方的算法 + 矩阵的次幂
- stack应用--矩阵乘法次数计算
- HDU 1082 矩阵乘法次数计算 写了半天搞定,很有成就感啊
- Hadoop 稀疏矩阵乘法的MapReduce计算
- 多线程--Python下载(支持断点续传) & Java多线程计算矩阵乘法
- 从矩阵乘法的不同计算方式来看局部性原理
- 矩阵链乘法确定矩阵的最佳计算顺序
- 计算矩阵乘法的网页工具
- 线性代数教程之一——矩阵乘法计算、理解及代码实现
- fzu 1692 Key problem(循环同构矩阵o(n^2)优化乘法)
- 向MapReduce转换:通过部分成绩计算矩阵乘法
- MPI多进程并行计算矩阵乘法实现
- 用Java的循环实现矩阵乘法代码
- 汇编入门学习笔记 (六)—— si、di,双重循环
- Python numpy 矩阵特殊加、乘法与循环优化
- 三重循环矩阵乘法运行时间比较