PDA

View Full Version : سوال: چاپ تمام دستورات output داخل حلقه تکرار



BeginnerProgrammer
سه شنبه 23 آذر 1389, 22:28 عصر
سلام
من یه حلقه تکرار نوشتم که یه دستور output داخل آن هست که هر بار مقداری که باید چاپ کند تغییر میکند ولی هر بار که وارد این حلقه میشود نوشته قبلی از صفحه نمایش پاک میشود باید چکار کنم که هیچ کدام از نوشته ها پاک نشوند؟

xman_1365_x
سه شنبه 23 آذر 1389, 23:12 عصر
حتما داخل حلقه از وقفه پاك كردن صفحه نمايش استفاده كرديد
داخل كد ها اگر اين خطوط هست پاك كنيد مشكل حل ميشه


mov ah,00
mov al,03
int 10h

BeginnerProgrammer
سه شنبه 23 آذر 1389, 23:15 عصر
نه دستوراتی که گفتید نیستند ، این کدشه


.code
_start:

output prompt1
input string, 40
atod string
mov number1, eax

output fib1
output fib2
mov eax,0
mov ebx,1

whilestart:;HalQye morde nazar
xchg eax,ebx
add ebx,eax
dtoa message1,ebx
output lable1; dasture chap
mov edx,Count
inc Count
cmp edx,number1
jle whilestart
jmp whiledone

whiledone:
input number1,12
invoke ExitProcess,0



public _start

end

BeginnerProgrammer
چهارشنبه 24 آذر 1389, 11:39 صبح
اینم کد کاملشه :


.386
.model flat
include io.h

ExitProcess proto near32 stdcall dwexitcode:dword

cr equ 0dh
lf equ 0ah

.stack 4096

.data
a dword 0
b dword 1
co dword 0
number1 DWORD ?

string BYTE 40 DUP (?)

fib1 byte "0",0
fib2 byte "1",0
Count dword 4
prompt1 BYTE "Enter number of sentence You want:? ", 0
lable1 byte cr," - "
message1 byte 16 dup (?)
byte cr,0
.code
_start:

output prompt1
input string, 40
atod string
mov number1, eax

output fib1
output fib2
mov eax,0
mov ebx,1

whilestart:;HalQye morde nazar
xchg eax,ebx
add ebx,eax
dtoa message1,ebx
output lable1; dasture chap
mov edx,Count
inc Count
cmp edx,number1
jle whilestart
jmp whiledone

whiledone:
input number1,12
invoke ExitProcess,0



public _start

end

BeginnerProgrammer
چهارشنبه 24 آذر 1389, 21:57 عصر
در لینک زیر فایل .asm ,.obj کد رو گذاشتم
63696
با استفاده از دستور زیر .obj, .asm رو ساختم
link /debug /subsystem:console /entry:start /out:name.exe name.obj io.obj kernel32.lib

xman_1365_x
پنج شنبه 25 آذر 1389, 12:37 عصر
همونطور كه قبلا به شما گفته بودم مشكل در استفاده از ماكرو ها بوده
اين سورس و فايل اجرايي درست
63701

خطوط اضافه هم خودتون پاك كنيد مثل:

jmp whiledone
whiledone:

موفق باشيد:لبخندساده: