ZKX's LAB

微机原理问题(关于汇编的) 微机原理汇编环境

2021-04-23知识8

微机原理汇编问题 data segmentvalue db 4dup(0)data endscode segmentassume ds:data,cs:codestart:mov ax,datamov ds,axmov es,axlea di,valuemov cl,4begin:push axand ax,0x0000Fstosbpopshr ax,4loop beginxor bx,bxxor cx,cxlea si valuemov bh,byte ptr[si]mov bl,byte ptr[si+1]mov ch,byte ptr[si+2]mov cl,byte ptr[si+3]mov ax,4c00hint 21hcode ends

MASM 5.0编译通过,运行无误。微机原理汇编问题 检举|1 小时前 提问者:曾经不化的雪|悬赏分:20编写程序,实现一位数的加法,要求:从键盘上输入被加数和加数,通过程序求和得出结果,在屏幕上显示一个完整的算式,例即执行生成的.exe文件时显示形式为:7+9=16.data segmentF DB 0;标志位字节,每输入一个数后该标志求反,以实现每两个数相加。A DB 0;被加数CRLF DB 0DH,0AH,24H;回车换行data endscode segmentassume cs:code,ds:datamain proc farbegin:push dsmov ax,0push axMOV AX,DATAMOV DS,AXNEXT:MOV AH,7INT 21Hcmp al,0dh;回车程序结束je exitCMP AL,'0';屏蔽0-9之外的字符JB NEXTCMP AL,'9'JA NEXTPUSH AXMOV DL,ALMOV AH,2INT 21HMOV DL,FNOT FMOV BL,FCMP BL,0;标志位字节=0时计算,否则继续输入加数JE ADD_1POP AXSUB AL,30HMOV A,ALMOV AH,2MOV DL,'+'INT 21HJMP NEXTADD_1:MOV AH,2MOV DL,'='INT 21HPOP AXSUB AL,30HADD AL,ADAAMOV DL,ALMOV CL,4SHR DL,CLAND AL,0FHAND DL,0FHADD AL,30HADD DL,30HPUSH AXMOV AH,2INT 21HPOP DXMOV AH,2INT 21HMOV DX,OFFSET CRLFMOV AH,9INT 21HJMP 。

微机原理问题(关于汇编的) 请这位大哥下次给点分,铁公鸡!一毛不拔,呵呵,开玩笑的1:mov ax,string(假设DS已设置好)xchg sting+1,axmov string,ax2;push axnot axand ax,21hpop bxand bx,1111111111011110Bor ax,bx(二):data segmentdata1 dw 8,7,5,9,1,4,23,45,10,30result dw?data endscode segmentassume cs:code,ds:datamain proc farmov ax,datamov ds,axmov bx,0mov dx,0;取最小的无符号数mov cx,10mnb:cmp dx,data1[bx]jb abcmov dx,data1[bx]abc:inc bxloop mnbmov result,dxmov ah,4chint 21hmain endpcode endsend main

#微机原理汇编与接口技术#微机原理和汇编#微机原理汇编环境#微机原理汇编朱定华版#微机原理与汇编技术

随机阅读

qrcode
访问手机版