PDA

View Full Version : برنامه ساعت به زبان اسمبلی



M59alizadeh
چهارشنبه 09 خرداد 1386, 11:26 صبح
با سلام خدمت همه بر بچ برنامه نویس
من دنبال برنامه ساعت به زبان اسمبلی هستم که ساعت سیستم رو به صورت دیجیتال گوشه مانیتور نشون بده .

mahdi_akhavan
چهارشنبه 09 خرداد 1386, 14:33 عصر
سلام آقای علیزاده!
شما میتونید به کمک تابع 2ch از وقفه 21h ساعت رو بخونید که در این صورت ch ساعت رو و cl دقیقه رو وdh ثانیه و dl میلی ثانیه رو بر می گردونه.
البته این خیلی شبیه پروژه های آقای بهلولی هستش. درسته؟

M59alizadeh
پنج شنبه 10 خرداد 1386, 13:27 عصر
سلام دوست عزیز
خیلی ممنونم از راهنمایی شما .
اما من اسمبلی اصلا بلد نیستم و فقط با دلفی و SQL کار کردم یکی از دوستان من این برنامه رو برای دانشگاه میخواست که من مزاحم دوستان برنامه نویس شدم .
اگر که شما یه همچین برنامه ای دارین ممنون میشم در اختیارم بذارین .
حتما جبران میکنم .
با تشکر

mahdi_akhavan
جمعه 11 خرداد 1386, 00:44 صبح
فقط میتونم تابع اون رو براتون بنویسم.
mov ah,2ch
int 21h
که در این صورت مقدار رجیستر ها به صورت توضیح قبلی خواهد شد و شما میتونید به کمک تابع زیر چاپش کنید.
mov ah,09h
lea dx,name registerfor print
int 21h
باز اگه برنامه رو گیر آوردم به emailشما attach میکنم.

M59alizadeh
یک شنبه 20 خرداد 1386, 18:32 عصر
با سلام دوباره خدمت شما دوست عزیزم
من بالاخره تونستم برنامه ساعت رو گیر بیارم
اگر که شما لازم داشتین بگین تا براتون بفرستم.
مرسی

alone boy
چهارشنبه 23 خرداد 1386, 17:57 عصر
سلام
حالال بعد از این که ساعت رو گرفتیم اگه به خوایم اون رو تغییر بدیم باید چی مار بکنیم

mehdi5106
شنبه 26 خرداد 1386, 05:50 صبح
ببین کد زیر به دردت می خوره...


stacksg segment stack 'stack'
dw 32 dup(0)
stacksg ends
codesg segment 'code'
assume ss:stacksg,cs:codesg
main proc far
call clear ;1-clear monitor
back1:
call cursor
call time
mov al,ch
call displa1
call colon
mov al,cl
call displa1
call colon
mov al,dh
call displa1
jmp back1
mov ax,4c00h
int 21h
main endp
clear proc near
push bx
mov ax,0600h
mov cx,0000h
mov dx,184fh
mov bh,0eh
int 10h
pop bx
ret
clear endp
cursor proc near
push dx
mov ah,02h
mov bh,00h
mov dh,12
mov dl,40
int 10h
pop dx
ret
cursor endp
time proc near
mov ah,2ch
int 21h
ret
time endp

colon proc near
push dx
mov dl,':'
mov ah,02h
int 21h
pop dx
ret
colon endp
displa1 proc near
push dx

mov bl,10
mov ah,00h
div bl
mov bx,ax
add bl,30h
add bh,30h
mov ah,02h
mov dl,bl
int 21h
mov dl,bh
int 21h
pop dx
ret
displa1 endp
codesg ends
end main

golrokh
یک شنبه 07 مرداد 1386, 14:45 عصر
با سلام دوباره خدمت شما دوست عزیزم
من بالاخره تونستم برنامه ساعت رو گیر بیارم
اگر که شما لازم داشتین بگین تا براتون بفرستم.
مرسی

سلام میشه لطف کنید و برنامه رو در فروم هم قرار بدهید؟

mountainking
چهارشنبه 10 مرداد 1386, 13:57 عصر
علاقه به وقفه تو این forum کولاک میکنه. بابا استفاده از وقفه مدتهاست کار غیر مطمئنیه مگر در مواردی. . ..
از API استفاده کنید.

kiarash_king
سه شنبه 30 بهمن 1386, 20:12 عصر
فکر کنم مشکل حل شد !!!

Devil_xxx2008
سه شنبه 24 دی 1387, 19:10 عصر
سلام آقای علیزاده!
شما میتونید به کمک تابع 2ch از وقفه 21h ساعت رو بخونید که در این صورت ch ساعت رو و cl دقیقه رو وdh ثانیه و dl میلی ثانیه رو بر می گردونه.
البته این خیلی شبیه پروژه های آقای بهلولی هستش. درسته؟

حالا اگه بخوام این ساعت تمام صفحه cmd رو بگیره باید چکار کنم ؟
منظورم اینه که سایزش به اندازه سایز Cmd باشه و فقط هم همین ساعت توی cmd چاپ بشه
ممنون