الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

[ تمت الإجابة ]برنامج يكرر ارقام في لفة الاسمبلي

بدأه aass في 19 مايو 2009 · 12 رد · 1,497 مشاهدة · في أرشيف قسم الـــ Assembly
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

انا الصراحة شيبت من اللغة ذي انا سبق اني اشتغلت على كذا لغة برمجة لكن الاسمبلي مو راضية تدخل راسي

على كلن انا عندس سوالين وهم:

الاول برنامج يقرا digit ويتاكد انها بين ال1 و ال9

وبعدين يطبعها على الشاشة نفس عدد الرقم متلا الرقم المدخل 5 يطبع 55555

السوال الثاني قريب لكن المطلوب انه النتيجة تكون على الشكل التالي لنفرض العدد المدخل نفس اللى 5 ايضا النتيجة لازم تكون

XXXXX

XXXXX

XXXXX

XXXXX

XXXXX

هو اللى على 6 اسئلة حليتهن وباقي السوالين ذول ياليت احد يساعدني واكون له من الشاكرين والممتنين

#2

شئ سهل

حاول فيه حتى تحصل على المساعدة لو أخطأت.

لا تعتمد على الآخرين الموضوع ليس بهذا التعقيد، هذه برمجة > منطق.

Do as I say, not as I do

We are Anonymous. We are Legion. We don't forgive. We don't forget

#3

الف شكر لك اخوي على مرورك العطر

انا زي ما قلت لك الاسمبلي مو راضية تدخل مزاجي

انا غالبا شغال على الجافا والvb.net

على العموم انا والله لي اسبوع وشوي وانا احاول في ال6 اسئلة ذول الحمد لله خلصت اربعة وباقي الاثنين لى يويمين وانا احاول ابدا فيهم

الف شكر على مرورك وما نستغني عن مساعدك

#4
اقتباس
انا الصراحة شيبت من اللغة ذي انا سبق اني اشتغلت على كذا لغة برمجة لكن الاسمبلي مو راضية تدخل راسي

ربما لانك لم تحاول ان تدخلها غصبا....

الامر صعب في البداية دوما لكنه يصبح سهلا بالتدريج :P

---------------------------

دعاية تجارية: مع منتجات sphinx C-- تحلو برمجتكم :D انضموا انضموا

العمل كثير و الوقت قليل أعاننا الله

seo zen SEO Enlightment amazon danbo

#5

اخي العزيز

الف شكر لك على مرورك السبب في انها مو راضبه تدخل راسي هو ات الدكتور شرحها في محاضرة ونص

وبعدين نزل ASSINMENT ستة اسئلة عليها

انا سويت اللى قدرت عليه وشئلت عن مساعدة والى اللحين وانا احاول فيها

I won't give up.

#6

طيب don't give up

سوف أساعدك لكن أتمنى أن تحاول أكثر في المرات القادمة والموضوع كما قلت بسيط وسترى الآن بنفسك...

بعض الوقت وسأكتب الكود.

Do as I say, not as I do

We are Anonymous. We are Legion. We don't forgive. We don't forget

#7

البرنامج الأول:

 

[color= #7f00ff;].model small

[color= #0000ff;].[color= #7f00ff;]stack [color= #ff0000;]64h

[color= #0000ff;].[color= #7f00ff;]data

msg		[color= #7f00ff;]db	[color= #0000a0;]"enter a number: $"

[color= #aa007f;]error	[color= #7f00ff;]db	[color= #0000a0;]"out of range, try again"[color= #0000ff;],[color= #7f7f7f;]13[color= #0000ff;],[color= #7f7f7f;]10[color= #0000ff;],[color= #0000a0;]"$"

 

[color= #0000ff;].[color= #7f00ff;]code

main	[color= #7f00ff;]proc

	[color= #ff007f;]mov	[color= #7f7f40;]ax[color= #0000ff;],@[color= #7f00ff;]data

	[color= #ff007f;]mov	[color= #7f7f40;]ds[color= #0000ff;],[color= #7f7f40;]ax

 

print_msg[color= #0000ff;]:

	[color= #ff007f;]mov	[color= #7f7f40;]ah[color= #0000ff;],[color= #7f7f7f;]9

	[color= #ff007f;]lea	[color= #7f7f40;]dx[color= #0000ff;],msg

	[color= #ff007f;]int	[color= #ff0000;]21h

 

	[color= #ff007f;]mov	[color= #7f7f40;]ah[color= #0000ff;],[color= #7f7f7f;]1

	[color= #ff007f;]int	[color= #ff0000;]21h

 

	[color= #ff007f;]cmp	[color= #7f7f40;]al[color= #0000ff;],[color= #ff0000;]30h

	[color= #ff007f;]jb	@e

	[color= #ff007f;]cmp	[color= #7f7f40;]al[color= #0000ff;],[color= #ff0000;]40h

	[color= #ff007f;]ja	@e

 

	[color= #ff007f;]jmp	@o

 

@e[color= #0000ff;]:

	[color= #ff007f;]call line

 

	[color= #ff007f;]mov	[color= #7f7f40;]ah[color= #0000ff;],[color= #7f7f7f;]9

	[color= #ff007f;]lea	[color= #7f7f40;]dx[color= #0000ff;],[color= #aa007f;]error

	[color= #ff007f;]int	[color= #ff0000;]21h

 

	[color= #ff007f;]jmp	print_msg

 

@o[color= #0000ff;]:

	[color= #ff007f;]mov	[color= #7f7f40;]cl[color= #0000ff;],[color= #7f7f40;]al

	[color= #ff007f;]sub	[color= #7f7f40;]cl[color= #0000ff;],[color= #ff0000;]30h

 

	[color= #ff007f;]push [color= #7f7f40;]ax

	[color= #ff007f;]call line

	[color= #ff007f;]pop [color= #7f7f40;]ax

 

@@[color= #0000ff;]:

	[color= #ff007f;]mov	[color= #7f7f40;]ah[color= #0000ff;],[color= #7f7f7f;]2

	[color= #ff007f;]mov	[color= #7f7f40;]dl[color= #0000ff;],[color= #7f7f40;]al

	[color= #ff007f;]int	[color= #ff0000;]21h

	[color= #ff007f;]loop [color= #aa007f;]@B

 

	[color= #ff007f;]mov	[color= #7f7f40;]ax[color= #0000ff;],[color= #ff0000;]4c00h

	[color= #ff007f;]int	[color= #ff0000;]21h

main	[color= #7f00ff;]endp

 

line	[color= #7f00ff;]proc

	[color= #ff007f;]mov [color= #7f7f40;]ah[color= #0000ff;],[color= #7f7f7f;]2

	[color= #ff007f;]mov [color= #7f7f40;]dl[color= #0000ff;],[color= #7f7f7f;]13

	[color= #ff007f;]int [color= #ff0000;]21h

	[color= #ff007f;]mov [color= #7f7f40;]ah[color= #0000ff;],[color= #7f7f7f;]2

	[color= #ff007f;]mov [color= #7f7f40;]dl[color= #0000ff;],[color= #7f7f7f;]10

	[color= #ff007f;]int [color= #ff0000;]21h

	[color= #ff007f;]ret

line	[color= #7f00ff;]endp

[color= #7f00ff;]end	main

* لا يتحقق من المدخل digit أم لا فوراً، إنما يأخذ حرف واحد فقط حتى يكون بين 1-9 حصراً ثم يتأكد أنه حرف أو رقم.

تم تعديل هذه المشاركة بواسطة Xacker في 20 مايو 2009 في 00:39

Do as I say, not as I do

We are Anonymous. We are Legion. We don't forgive. We don't forget

#8

البرنامج الثاني:

 

[color= #7f00ff;].model small

[color= #0000ff;].[color= #7f00ff;]stack [color= #ff0000;]64h

[color= #0000ff;].[color= #7f00ff;]data

msg		[color= #7f00ff;]db	[color= #0000a0;]"enter a number: $"

[color= #aa007f;]error	[color= #7f00ff;]db	[color= #0000a0;]"out of range, try again"[color= #0000ff;],[color= #7f7f7f;]13[color= #0000ff;],[color= #7f7f7f;]10[color= #0000ff;],[color= #0000a0;]"$"

 

[color= #0000ff;].[color= #7f00ff;]code

main	[color= #7f00ff;]proc

	[color= #ff007f;]mov	[color= #7f7f40;]ax[color= #0000ff;],@[color= #7f00ff;]data

	[color= #ff007f;]mov	[color= #7f7f40;]ds[color= #0000ff;],[color= #7f7f40;]ax

 

print_msg[color= #0000ff;]:

	[color= #ff007f;]mov	[color= #7f7f40;]ah[color= #0000ff;],[color= #7f7f7f;]9

	[color= #ff007f;]lea	[color= #7f7f40;]dx[color= #0000ff;],msg

	[color= #ff007f;]int	[color= #ff0000;]21h

 

	[color= #ff007f;]mov	[color= #7f7f40;]ah[color= #0000ff;],[color= #7f7f7f;]1

	[color= #ff007f;]int	[color= #ff0000;]21h

 

	[color= #ff007f;]cmp	[color= #7f7f40;]al[color= #0000ff;],[color= #ff0000;]30h

	[color= #ff007f;]jb	@e

	[color= #ff007f;]cmp	[color= #7f7f40;]al[color= #0000ff;],[color= #ff0000;]40h

	[color= #ff007f;]ja	@e

 

	[color= #ff007f;]jmp	@o

 

@e[color= #0000ff;]:

	[color= #ff007f;]call line

 

	[color= #ff007f;]mov	[color= #7f7f40;]ah[color= #0000ff;],[color= #7f7f7f;]9

	[color= #ff007f;]lea	[color= #7f7f40;]dx[color= #0000ff;],[color= #aa007f;]error

	[color= #ff007f;]int	[color= #ff0000;]21h

 

	[color= #ff007f;]jmp	print_msg

 

@o[color= #0000ff;]:

	[color= #ff007f;]mov	[color= #7f7f40;]cl[color= #0000ff;],[color= #7f7f40;]al

	[color= #ff007f;]sub	[color= #7f7f40;]cl[color= #0000ff;],[color= #ff0000;]30h

 

	[color= #ff007f;]push [color= #7f7f40;]ax

	[color= #ff007f;]call line

	[color= #ff007f;]pop [color= #7f7f40;]ax

 

	[color= #ff007f;]mov [color= #7f7f40;]bx[color= #0000ff;],[color= #7f7f40;]cx

table[color= #0000ff;]:

	[color= #ff007f;]push [color= #7f7f40;]cx

@@[color= #0000ff;]:

	[color= #ff007f;]mov	[color= #7f7f40;]ah[color= #0000ff;],[color= #7f7f7f;]2

	[color= #ff007f;]mov	[color= #7f7f40;]dl[color= #0000ff;],[color= #7f7f40;]al

	[color= #ff007f;]int	[color= #ff0000;]21h

	[color= #ff007f;]loop [color= #aa007f;]@B

	[color= #ff007f;]pop [color= #7f7f40;]cx

 

	[color= #ff007f;]push [color= #7f7f40;]ax

	[color= #ff007f;]call line

	[color= #ff007f;]pop	[color= #7f7f40;]ax

 

	[color= #ff007f;]dec [color= #7f7f40;]bx

	[color= #ff007f;]test [color= #7f7f40;]bl[color= #0000ff;],[color= #7f7f40;]bl

	[color= #ff007f;]jne table

 

	[color= #ff007f;]mov	[color= #7f7f40;]ax[color= #0000ff;],[color= #ff0000;]4c00h

	[color= #ff007f;]int	[color= #ff0000;]21h

main	[color= #7f00ff;]endp

 

line	[color= #7f00ff;]proc

	[color= #ff007f;]mov [color= #7f7f40;]ah[color= #0000ff;],[color= #7f7f7f;]2

	[color= #ff007f;]mov [color= #7f7f40;]dl[color= #0000ff;],[color= #7f7f7f;]13

	[color= #ff007f;]int [color= #ff0000;]21h

	[color= #ff007f;]mov [color= #7f7f40;]ah[color= #0000ff;],[color= #7f7f7f;]2

	[color= #ff007f;]mov [color= #7f7f40;]dl[color= #0000ff;],[color= #7f7f7f;]10

	[color= #ff007f;]int [color= #ff0000;]21h

	[color= #ff007f;]ret

line	[color= #7f00ff;]endp

[color= #7f00ff;]end	main

* نفس البرنامج الأول لكن مع تعديل في النهاية فقط.

تم تعديل هذه المشاركة بواسطة Xacker في 20 مايو 2009 في 00:37

Do as I say, not as I do

We are Anonymous. We are Legion. We don't forgive. We don't forget

#9

ياحي انت ررررهيب

اقسم بالله مادرس كيف اشكرك

السان يعجز عن التعبير

لكن فيه استفسار

البرنامج ابرنامج اللى انا شغال عليه هو 6800 emulator

والتعليمات شكلها تختلق هو انا واهم والا ايه ؟؟

اسال الله العظيم رب العرش الكريم ان لايحرمك ما دعيت لك وان يوفقك ويفرج عنك كرب الدنيا والاخرة

#10

العفو

لا أعرف برنامج emulator 6800 الذي تتكلم عنه، هل يمكن إرفاقه أو وضع رابط لموقع موجود عليه ؟

اقتباس
والتعليمات شكلها تختلق هو انا واهم والا ايه ؟؟

هذا السؤال غير واضح، أعد صياغته لو سمحت.

Do as I say, not as I do

We are Anonymous. We are Legion. We don't forgive. We don't forget

#11

اخي العزيز اسف على الاخطاء الاملائية :blush:

بالنسبة للبرنامج موجود في هذه الصفحة وهو برنامج حلو

http://www.hvrsoftware.com/6800emu.htm

وانا كنت اقصد باخر جمله ان التعليمات شكلها تختلف

انا فاهم ان تعليمات اي لغة stander لكن والله ما دري وش الفرق بينهن

شااااكر لك ومقدر

#12
اقتباس
6800IDE is a freeware windows based IDE for Motorola's 6800 processor

هذه من صفحة الموقع، كل معالج له تعليمات مختلفة إلا لو مبني على نفس التصميم مثل AMD و Intel.

لكن Motorola لها تعليمات مختلفة تماماً وأنت لم تذكر في البداية المعالج الذي تكتب له :(

للأسف لم أكتب شئ بتعليمات موتورولا من قبل :(

يمكنك أن تحاول الاستفادة من فكرة البرنامج الذي كتبته ولو على التعليمات راجع هذه الصفحة:

http://faydoc.tripod.com/cpu

تستطيع من خلالها معرفة كل تعليمة كتبتها ما استخدامها وكتابة شبيه بتعليمات موتورولا.

Do as I say, not as I do

We are Anonymous. We are Legion. We don't forgive. We don't forget

#13

الف شكر لك اخوي

انا إن شاء الله راح اشتغل عليها

مره ثانية الف شكر لك على جهودك

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…