微机原理 汇编编程题 做不来 谁能帮帮我 DATAG SEGMENTBLOCK DB-5,12,-9,24,59,63,21,47,52,12LEN EQU$-BLOCKDATAG ENDSSSG SEGMENTDW 20H DUP(0)SSG ENDSCODEG SEGMENTASSUME DS:DATAG,CS:CODEG,SS:SSGSTART:MOV AX,DATAGMOV DS,AXMOV CX,LEN-1ROTATE:MOV SI,0UP:MOV AL,BLOCK[SI]CMP AL,BLOCK[SI+1]JL JUMPXCHG AL,BLOCK[SI+1]MOV BLOCK[SI],ALJUMP:INC SICMP SI,CXJNE UPLOOP ROTATEMOV AH,4CHINT 21HCODEG ENDSEND START程序是这样的,在debug调试工具下可以看到结果,我只写了10个数据,如果你真想要100个的话,你可以在BLOCK DB-5,12,-9,24,59,63,21,47,52,12后面加到100个,程序不用改动.
读一道微机原理汇编程序题(比较简短) 从2014:0063开始,在100个字节内,查找第一个出现关键字符‘#’的位置。如果找到,则把该位置的下一位置存放到BX中,否则将BX的值置为0。
急急急!微机原理汇编语言求原程序,题目如下: CODE SEGMENTASSUME CS:CODEBUFF DB 100 DUP?X DW 0Y DW 0Z DW 0START:PUSH CSPOP DSPUSH CSPOP ESLEA DI,BUFFMOV AL,1MOV CX,100CLD1:STOSBINC ALLOOP@1LEA SI,BUFFMOV CX,100CLD2:LODSBCBWADD X,AXLOOP@2MOV AX,XMOV BX,10CALL DSPAXLEA SI,BUFFMOV CX,100CLD3:LODSBCBWMOV BX,AXCALL FCMP AX,0JE@4INC WORD PTR YADD Z,BX4:LOOP@3MOV AX,YMOV BX,10CALL DSPAXMOV AX,YMOV BX,2CALL DSPAXMOV AH,4CHINT 21H要判断的数放入ax中ax返回1时表示是素数ax返回0时表示是合数F PROC NEARPUSH BXPUSH DXJMP F1X DW?X2 DW?F1:CMP AX,1JZ F2CMP AX,2JZ F11CMP AX,3JZ F11MOV@X,AXSHR AX,1MOV@X2,AXMOV BX,2FLP:MOV DX,0MOV AX,@XDIV BXCMP DX,0JZ F2INC BXCMP BX,@X2JBE FLPF11:MOV AX,1POP DXPOP BXRETF2:MOV AX,0POP DXPOP BXRETF ENDPDSPAX PROC NEARPUSH AXPUSH BXPUSH CXPUSH DXPUSHFXOR CX,CXMOV BX,2DSPAX1:XOR DX,DXDIV BXINC CXOR DX,30HPUSH DXCMP AX,0JNE@DSPAX1MOV AH,2DISPAX2:POP DXINT 21HLOOP@DISPAX2MOV DL,32INT 21HPOPFPOP DXPOP CXPOP 。