این برنامه بصورتی کار میکنه که مقدار طول ها و تعداد شکل ها رو از Data Segment چک میکنه و بعد از هر بار دور زدن از تعداد ستاره های قابل چاپ شدن کم مینه و cursor رو به داخل shift میکنه تا شکل بعدی رو با ابعاد جدید نمایش بده, سورس رو میتونید از داخل صفحه کپی کنید, این سورس با Emu 8086 نسخه 4 به بالا سازگاره..
; multi-segment executable file template. data segment ; add your data here! pkey db "YEAHHHHH!!!..$" ;my data: rac db -2 ;for modifying the position of cursor wah db 19 ;size of shapes round db 5 ;my data ends. ends stack segment dw 128 dup(0) ends code segment start: ; set segment registers: mov ax, data mov ds, ax mov es, ax ; add your code here ;my code: sto:;star row MOV CH,wah ;counter for stars, starting at 19 MOV CL,rac MOV BL,rac INC CL INC CL INC BL INC BL nxc:MOV AH,2 ; MOV DL,CL ;>columns. MOV DH,BL ;>modifying the cursor position MOV BH,0 ; starting from -2(0). INT 10H ; MOV DL,'*' ; MOV AH,2 ;>printing stars INT 21H ; INC CL DEC CH ;1 star rows JNZ nxc ; ;star column MOV CH,wah nxr:MOV AH,2 ; MOV DL,CL ;>columns:static MOV DH,BL ;>rows:dynamic MOV BH,0 ; INT 10H ; MOV DL,'*' ; MOV AH,2 ;>printing stars INT 21H ; INC BL DEC CH JNZ nxr ;star row back MOV CH,wah nxt:MOV AH,2 ; MOV DL,CL ;>columns:dynamic MOV DH,BL ;>rows:static MOV BH,0 ; INT 10H ; MOV DL,'*' ; MOV AH,2 ;>printing stars INT 21H ; DEC CL DEC CH JNZ nxt ;star column back MOV CH,wah nxs:MOV AH,2 ; MOV DL,CL ;>columns:dynamic MOV DH,BL ;>rows:static MOV BH,0 ; INT 10H ; MOV DL,'*' ; MOV AH,2 ;>printing stars INT 21H ; DEC BL DEC CH JNZ nxs ;next round INC rac INC rac DEC wah DEC wah DEC wah DEC wah DEC round JNZ sto ;set position for "wait for any key...." MOV AH,2 ; MOV DL,4 ;>columns:dynamic MOV DH,22 ;>rows:static MOV BH,0 ; INT 10H ; ;my code ends. lea dx, pkey mov ah, 9 int 21h ; output string at ds:dx ; wait for any key.... mov ah, 1 int 21h mov ax, 4c00h ; exit to operating system. int 21h ends end start ; set entry point and stop the assembler.
thanks so much ; but I didn’t understand anything . 😀
LikeLike
You’re welcome, I’ll be happy to help you understand it,
You can ask me your questions using provided contact form.
peace.
LikeLike
Thank you for your great efforts.
Waiting to see more of you.
LikeLike
You’re the most welcome,Armin
I’m glad to hear that.
Sincerely,
Ali KAbiri.
LikeLike
سلام تحلیل این کد چیه؟ میشه جواب بدید
LikeLike
منظورتون از تحلیل چیه؟
LikeLike