微机原理 汇编语言 data segmentbuf1 db 1,3,4,5,7,9n1 equ$-buf1buf2 db 2,4,6,8,10,12n2 equ$-buf2buf3 db n1+n2 dup(0)data endscode segmentassume cs:code,ds:datastart:mov ax,datamov ds,axlea si,buf1lea di,buf2lea bx,buf3mov cx,0;ch->;index for buf1cl->;index for buf21:cmp ch,n1jz$8cmp cl,n2jz$9mov al,[si]cmp al,[di]ja$2jb$3mov[bx],alinc bxinc siinc diinc chinc cljmp$12:mov al,[di]mov[bx],alinc clinc bxinc dijmp$13:mov[bx],alinc chinc bxinc sijmp$18:cmp cl,n2jz$10mov al,[di]mov[bx],alinc bxinc diinc cljmp$89:cmp ch,n1jz$10mov al,[si]mov[bx],alinc siinc bxinc chjmp$910:mov ah,4chint 21hcode endsend start
微机原理汇编语言实验课上的一道题~~~ 微机原理汇编语言实验课上的一道题~想问一下这个乘除法运算的实验到底是什么意思?是16进制直接运算吗?怎么我验算结果和他算的不一样?那个乘积到底是怎么来的 就是302AH乘以。
微机原理汇编语言编程题 在数据段中定义了一个TAB变量来存放字节型数据块。数据块的长度为10,数据 MOV BX,OFFSET TAB;把TAB变量的首5261字节地址放到BX寄存器4102 MOV CX,10;因为数据块长度是165310,把10放到CX计数器MOV DX,0;DX用来存放结果,初始为0LOP1:MOV AL,[BX];把BX对应的值放入AL寄存器CMP AL,0;比较AL与0,这里主要看ZF标志位的值JNE NEXT1;如ZF=0(意AL不为0),跳到NEXT1标号处INC DX;计数器DX加1,(发现一个0)NEXT1:INC BX;BX加1,指向TAB里下一个字节变量LOOP LOP1;判断计数器CX,不为0则跳转到LOP1处MOV COUNT,DX;把DX里的结果放入COUNT对哇。