私はこのコード部分を私に "翻訳"できました。これは私が学校で持っていたコードから分けました。私は病気で、私が持っていたレッスンを見ていませんでした。この上の(私はレッスンを失ったため)と私は理解して傾ける空白it.Iは、インターネットをしようと試みたが、私はあなたがこのことから何かを理解することができfailed.Ifと私は何があるアセンブリメイン、メイン、S_LOOP
main proc
1)非常に喜んでいただけることでしょう答える与えますアセンブリのmain proc
?それは何をするためのものか?私はこれをどのように終わらせるべきですか?
MAIN endp
2)前と同じです。なぜ大文字にされるのですか?
findchar PROC
3)findchar
は、charが、PROCを見つけることを試みるを指し?
S_LOOP
LOOP S_LOOP
4)これは何ですか?
findchar endp
5)charが見つかるとMAINは終了しますか?
soros segment stack
6)これはスタックにどのような影響を及ぼしますか?私のコードまでは私が持っている:
ASSUME CS:KODIKAS, DS:DEDOMENA, ss:soros
*
Buffer 40DB dub(0)
7)その "メッセージ" のため?
db 256 dup(0)
8)同じく小文字と256文字で同じですか? 256は何ですか? :/
そのギリシャ語で
TITLE SIMPLE_ADD
KODIKAS SEGMENT
ASSUME CS:KODIKAS, DS:DEDOMENA,ss:soros
ARXI:
main proc
MOV AX,DEDOMENA
MOV DS,AX
MOV SI,0
LEA DX,MINIMA
MOV AH,9
INT 21H
XANA:
MOV AH,1
INT 21H
CMP AL,35 ;GIA ENTER
JE CHECK
SAVE:
MOV BUFFER[SI],AL
INC SI
CMP SI,80
JB XANA
CHECK:
call findchar
MOV AH,4CH
INT 21H
MAIN endp
findchar PROC ;uporoutina
MOV CX,SI
JCXZ EXIT
MOV SI,0
LEA DX,MINIMA2
MOV AH,9
INT21H
MOV ah,1
INT 21h
MOV BL,0
MOV DL,AL
findchar proc
MOV CX,SI
JCXZ EXIT
MOV SI,0
mov bl,0
LEA DX,MINIMA2
MOV AH,9
INT 21H
mov ah,1
int21h
S_LOOP
cmp al, BUFFER[SI]
jne next
inc bl
next:
inc si
LOOP S_LOOP
MOV bl,0
je nochar
lea dx,yparxei
mov ah,9
int 21h
cmp bl,9
ja dipsifios
mov dl,bl
add dl,48
mov ah,2
int 21h
ret
dipsifios:
MOV al,bl
mov ah,0
mov cl,10
div cl
mov ch,ah
mov dl,al
add dl,48
mov ah,2
int 21h
ret
nochar: ;den uparxei
LEA DX,MINIMA3
MOV AH,9
INT21H
findchar endp
KODIKAS ENDS
DEDOMENA SEGMENT
BUFFER 40DB dub(0)
MINIMA1 DB 10,13, "Eisagete keimeno : $"
MINIMA2 DB 10,13,"Eisagete char gia anazitisi :$"
MINIMA3 DB 10,13,"Den yparxei kanenas xaraktiras :$"
YPARXEI DB 10,13,"O xarakthras yparxei fores : $"
BUFFER DB 80 DUP(0)
DEDOMENA ENDS
soros segment stack
db 256 dup(0)
END ARXI
スペルや文法に関する質問を編集してください。私は試しましたが、あなたが話していることを理解できません:/ – Blacksilver
今すぐですか?それとも理解できないのですか? –
私はアセンブルでどのようにプログラムするのか分かりません。私はちょうど人々を手伝っています:) – Blacksilver