導航:首頁 > 編程語言 > 匯編在線編程

匯編在線編程

發布時間:2022-08-29 12:03:13

❶ 匯編語言編程,在線等,急啊!!!!!!!!!!!!!!謝謝

匯編實現計算器……
出題的人是不是腦子進水了,用匯編寫這種應用程序就如同用耳挖勺去挖水渠一樣,應該讓學生學點先進的思想,不要研究這種如奧數一般的旁門左道的東西。

❷ 用匯編語言來編寫程序,計算字元長度,根據提示輸入字元串;輸入任意字元串string,點擊Enter結束輸入;

data segment
buffer db 40h
numbuf db 0
msg2 db 41h p (0)
data ends

stack segment stack para 'stack' stack
s db 10 p( 0 )
stack ends

code segment
assume cs:code, ds:data, ss:stack

start:
mov ax,data
mov ds,ax

lea dx,buffer
mov ah,0ah
int 21h

xor bx,bx
mov bl,numbuf ;你要的重點在這里
mov msg2[bx],'$'

mov dl,0ah
mov ah,02h
int 21h

lea dx,msg2
mov ah,9
int 21h

mov dl,0ah
mov ah,02h
int 21h

jmp start

mov ah, 4ch
int 21h

code ends
end start

;這個程序應該幫到你想問題,0ah在調用區的第二個單元會記錄鍵盤輸入的字元串的字元數

❸ 急求,匯編語言程序設計,在線等待,謝謝!

DATA SEGMENT
VARX DB 34;定義X=34
VARY DB 58;定義Y=58
RUSUM DB ?;定義存放結果Z的RESUM
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START:
MOV AX,DATA
MOV DS,AX
MOV AL,VARX;取出X
ADD AL,VARY;X+Y
MOV CL,3
SHL AL,CL;(X+Y)*8
SUB AL,VARX;(X+Y)*8-X
SHR AL,1;[(X+Y)*8-X]/2
MOV RUSUM,AL;存結果
MOV CH,2;循環兩次在屏幕上顯示兩位十六進制結果
MOV BL,AL
NEXT:
MOV CL,4
ROL AL,CL
AND AL,0FH;取出一位十六進制數
CMP AL,9H
JNA BDY
ADD AL,7;如果十六進制數為A-F,則需要先加7
BDY:
ADD AL,30H;將十六進制數轉換為ASCII
MOV DL,AL;在屏幕上顯示十六進制數
MOV AH,2
INT 21H
MOV AL,BL
DEC CH
JNZ NEXT
MOV AH,1;等待按鍵
INT 21H
MOV AH,4CH;結束程序
INT 21H
CODE ENDS
END START

❹ 匯編語言編程,急,在線等

我也是剛學匯編,可能編得有點累贅,請不要見怪
--------------------------------------------
SSEG SEGMENT PARA STACK
DB 64 DUP(?)
SSEG ENDS
DSEG SEGMENT
MESS1 DB 'HAPPY BIRTHDAY TO $'
MESS2 DB 'YOUR BIRTHDAY WILL COME NEXT YEAR.$'
MESS3 DB 'YOUR BIRTHDAY WILL COME IN $'
MESS4 DB ' DAY(S).$'
O_NAM DB 'YOU NAME:$'
O_BIR DB 'BIRTHDAY:$'
I_NAM DB 32
DB ?
DB 32 DUP(?)
I_BIR DB 5
DB ?
DB 5 DUP(?)
DSEG ENDS
CSEG SEGMENT
ASSUME CS:CSEG,DS:DSEG
START: MOV AX,DSEG
MOV DS,AX
LEA DX,O_NAM
MOV AH,9H
INT 21H
LEA DX,I_NAM
MOV AH,0CH
MOV AL,0AH
INT 21H
CALL NEWLINE
MOV AL,I_NAM+1
XOR AH,AH
MOV SI,AX
MOV I_NAM[SI+2],24H
LEA DX,O_BIR
MOV AH,9H
INT 21H
LEA DX,I_BIR
MOV AH,0CH
MOV AL,0AH
INT 21H
CALL NEWLINE
MOV SI,2
CALL XCH
MOV BH,BL
CALL XCH
MOV AH,2AH
INT 21H
CMP BH,DH
JA BIG1
JB SMA
CMP BL,DL
JA BIG2
JB SMA
LEA DX,MESS1
MOV AH,9H
INT 21H
LEA DX,I_NAM
ADD DX,2
MOV AH,9H
INT 21H
JMP OK
BIG1: SUB BH,DH
MOV AL,30
MUL BH
XOR BH,BH
SUB BL,DL
SBB BH,0
ADD AX,BX
XOR DX,DX
MOV BL,10
XOR CX,CX
JMP NEXT1
BIG2: SUB BL,DL
XOR AH,AH
MOV AL,BL
XOR DX,DX
MOV BL,10
XOR CX,CX
NEXT1: CMP AX,10
JB SHOW
DIV BL
MOV DL,AH
PUSH DX
XOR AH,AH
INC CX
JMP NEXT1
SHOW: PUSH AX
LEA DX,MESS3
MOV AH,9H
INT 21H
POP AX
MOV DL,AL
ADD DL,30H
MOV AH,02H
INT 21H
CMP CX,0
JE OK1
NEXT2: POP DX
ADD DL,30H
MOV AH,02H
INT 21H
LOOP NEXT2
OK1: LEA DX,MESS4
MOV AH,9H
INT 21H
JMP OK
SMA: LEA DX,MESS2
MOV AH,9H
INT 21H
OK: MOV AH,4CH
INT 21H
XCH PROC
MOV AL,I_BIR[SI]
SUB AL,30H
MOV BL,10
MUL BL
INC SI
MOV BL,I_BIR[SI]
SUB BL,30H
INC SI
ADD BL,AL
RET
XCH ENDP
NEWLINE PROC
PUSH AX
PUSH DX
MOV DL,0DH
MOV AH,2H
INT 21H
MOV DL,0AH
MOV AH,2H
INT 21H
POP DX
POP AX
RET
NEWLINE ENDP
CSEG ENDS
END START

❺ 急求匯編編寫程序實現 z←(x*y)/(Y+1234H),在線等

mov eax,X
mov ebx,Y
imul ebx
add ebx,1234H
idiv ebx
mov Z,eax

❻ 高分懸賞一個匯編語言編程題 在線等 急

data segment
num dw 2 p(?)
ver_1 db 0
data ends
code segment
assume ds:data,cs:code
start:
mov ax,data
mov ds,ax
mov bx,0
mov di,0
newchar:
mov ax,di
mov cx,10d
mul cx
xchg ax,di
add di,ax

mov ah,1
int 21h
sub al,30h
jl newchar
cmp al,9d
jg newchar
cmp al,20h
jz exit
cbw
xchg ax,bx
mov cx,10d
mul cx
xchg ax,bx
add bx,ax
adc di,0
next:inc ver_1
cmp ver_1,9
jna newchar
exit:
mov num,ax
mov num+2,di
mov ah,1
int 21h
mov ah,4ch
int 21h
code ends
end start

❼ 在線等急急急,匯編實現四個兩位非壓縮BCD數相加

LEA DX,RESULT ; 結果數據區首址 LEA SI,NAME1 ; 結果文件名 MOV CX,N+4 ; 結果位元組數 CALL SAVE ; 保存結果到文件 RET START ENDP CODE ENDS END START 就是把首地址傳參給dx,題中因為要把結果輸出在output1.dat中,而結果被保存在result所指...

❽ 用匯編語言,編寫程序輸出100-200之間所有的素數,每行輸出5個數,在線等,急求!!!!!!!!!!

;用匯編語言,編寫程序輸出100-200之間所有的素數,每行輸出5個數,在線等,急求!!!!!!!!!!

datasegment

n1db20p(0)

NDB0

dataends


codesegment

mainprocfar

assumecs:code,ds:data


start:

PUSHDS

XORAX,AX

PUSHAX

MOVAX,DATA

MOVDS,AX

;

;MOVAX,20000

movax,100;起始數

AGAIN:

cmpax,200;結束數

;cmpax,300

jaexit

MOVBX,2

X1:

CMPBX,AX

JAeEXIT1;YES,DISPIT

PUSHAX

PUSHBX

MOVDX,0

DIVBX

CMPDX,0;YU=0

JEN11;NO

POPBX

POPAX

cmpbx,2;去掉偶數

jaadd2

decbx

add2:

incbx

INCBX

JMPX1

N11:

POPBX

POPAX

JMPN22


EXIT1:;YES,DISPIT


movsi,offsetn1

movdx,0

CALLDIV10

pushax

pushbx

movdx,offsetn1

movah,9

int21h


INCN

MOVAL,N

CMPAL,5;每行顯示5個數

JNEDISP_K

MOVAL,0

MOVN,AL

JMPDISP_CR

DISP_K:

MOVAH,2

MOVDL,''

INT21H

JMPNEXT9

DISP_CR:

movah,2

movdl,0dh

int21h

movdl,0ah

int21h

NEXT9:

popbx

popax

N22:

incax

jmpagain

exit:


RET

;INT20H

mainendp

;=====================

;=====================

;將32位16進制數(DX:AX)轉換為10進制數子程序

;入口:DX:AX存32位16進制數,SI為存放轉換後10進制數的首地址

;出口:在SI中存放轉換後10進制數的ASCII碼

DIV10PROCNEAR

pushax

PUSHBX;保護現場

PUSHCX

PUSHDI

MOVCX,0;每位10進制數進棧計數器

MOVBX,10D;除數10

RE_DIV:

PUSHAX;低16位進棧

MOVAX,DX;先除高16位

MOVDX,0;高位置0

DIVBX;商在AX中,是下一輪除的高位;余數在DX中,它和已進棧的AX(低16位)組成新的32位數

MOVDI,AX;將下一輪除的高位保存在DI

POPAX;取回先前進棧的低16位

DIVBX;除後,商AX是下一輪的低16位,即(DI:AX)組成新的32位被除數;

;余數DX是一位已轉換的10進制數

ADDDX,30H;將其轉換成ASCII碼

PUSHDX;將其進棧

INCCX;進棧計數器加1

MOVDX,DI;將高位商返回DX

CMPAX,0;判斷商是否為0,DX:AX均需為0,實際上就是(DI:AX)這個新組成的32位被除數是否為0

jzdown1;商低位為0

JMPRE_DIV;商低位不為0,繼續除10取余

down1:

cmpdx,0

jzdown;商低位(AX)為0,高位(DX)也為0

JMPRE_DIV;否則繼續除10取余

DOWN:;當DX和AX均為0時(商為0),轉結束除

POP[SI];以CX的值(進棧計數器)依次出棧

INCSI;由於出棧的數僅低8位有效(高位為0),所以SI每次只增1,

;使新出棧的低8位有效值覆蓋前一次出棧的高位0

LOOPDOWN

MOVAL,'$'在字元串尾部加結束標志

MOV[SI],AL

POPDI;恢復現場

POPCX

POPBX

popax

RET

DIV10ENDP

;========================

;========================

codeends

endstart

❾ 匯編語言考試四道編程題,在線等

DATASEGMENT

STRDB'!@#$%?><qwertASDFGZXCVB(*$1235790Kf',0
;這是一個包含任意字元,以0結尾的字元串

DATAENDS

CODESEGMENT
ASSUMECS:CODE,DS:DATA
;---------------------------------
DISP:
MOVAH,2
D_LP:
MOVDL,[SI]
CMPDL,0
JZD_END
INT21H
INCSI
JMPD_LP
D_END:
MOVDL,13
INT21H
MOVDL,10
INT21H
RET
;---------------------------------
PROG:

;把以0結尾的字元串中轉換成"首字母大寫,其餘字母小寫"

DECSI
FIR:
INCSI
MOVAL,[SI]
CMPAL,0
JZP_END
ANDAL,11011111B
CMPAL,'A'
JBFIR
CMPAL,'Z'
JAFIR
MOV[SI],AL
SEC:
INCSI
MOVAL,[SI]
CMPAL,0
JZP_END
ORAL,20H
CMPAL,'a'
JBSEC
CMPAL,'z'
JASEC
MOV[SI],AL
JMPSEC
P_END:
RET
;---------------------------------
START:
MOVAX,DATA
MOVDS,AX

LEASI,STR;取偏移地址
CALLDISP;顯示原字元串

LEASI,STR;取偏移地址
CALLPROG;字元串轉換

LEASI,STR;取偏移地址
CALLDISP;顯示處理後字元串

MOVAX,4C00H
INT21H
;------------------------------------
CODEENDS
ENDSTART

;====================================

上述程序才符合題目要求。

執行後顯示:

c:masm5>mm
!@#$%?><qwertASDFGZXCVB(*$1235790Kf
!@#$%?><Qwertasdfgzxcvb(*$1235790kf


網友採納答案中,對《包含任意字元,以0結尾》的理解,有偏差。

在任意字元中,就包括《$》。

因此,不能為了使用以$為結束符的9號調用,就把$排除在字元串之外。

❿ 匯編語言編程題,和數組有關

以前寫了一半,因太長沒寫完。網上有現成的答案:

新手求教匯編問題!!!!!!!!!!!!!!在線等之。
http://..com/question/148915126.html?si=1

閱讀全文

與匯編在線編程相關的資料

熱點內容
卸載聯想app哪個好 瀏覽:719
php文字轉圖片 瀏覽:328
豆客後台怎麼加密碼 瀏覽:574
jpg轉換pdf破解版 瀏覽:978
php基礎書籍推薦 瀏覽:775
伺服器與外網不通如何驗證 瀏覽:351
電子版是不是就是文件夾 瀏覽:50
游戲屬性文件加密 瀏覽:462
如何讓安卓手機桌面圖標下移 瀏覽:528
ubuntuphp5環境搭建 瀏覽:99
賭癮解壓視頻 瀏覽:917
晉城移動dns伺服器地址 瀏覽:294
php開源文庫系統 瀏覽:134
android記事本源碼 瀏覽:406
安卓11小游戲怎麼玩法 瀏覽:189
gif有損壓縮 瀏覽:936
windows下安裝linux命令操作 瀏覽:843
米家app怎麼設置進門亮燈 瀏覽:652
任我行伺服器為什麼會影響截圖 瀏覽:296
安卓留言板怎麼刪除 瀏覽:18