PDA

نسخه کامل مشاهده نسخه کامل : برنامه Visual Basic را با چه برنامه ای نوشته اند؟



Farahmand Farshidy
27-05-2007, 15:17
سلام به همه کاربران بخش برنامه نویسی این انجمن!!!
یه سوال همیشه در ذهنم خطور میکند:
برنامه Visual Basic 6 را با چه برنامه ای نوشته اند؟
از تمام عزیزانی که در این باره معلومات دارند، خواهشمندم تا معلومات خویش را در این باره برای من و دیگر کاربران محترم بیان نموده و ممنون سازید.
با احترام
فرهمند

khaiyam
28-05-2007, 20:47
دوست عزیز اگر منظور شما خود Ide هست با هر زبانی امکان پذیر هست می تونه با C یا C++ با شه

Farahmand Farshidy
29-05-2007, 08:26
سلام دوست عزیز!
ممنون از جوابت.
من برنامه نویسی بلد نیستم و خیلی هم علاقه به یاد گرفتن روش برنامه نویسی با برنامه های چون Visual Basic و C و غیره برنامه ها دارم.
اما این سوال در ذهنم خطور میکند که در این دنیا هر چیزی را بوسیله چیز دیگری میسازند.
این که دیگر معلومست که برنامه های چون Visual Basic و C هم توسط یه برنامه ای نوشته شده اند.
من میخواهم بدانم که Visual Basic توسط کدام برنامه نوشته شده است. اسم اون برنامه چیست؟
ببخشید که پرحرفی نمودم.
بااحترام
فرهمند

_H2_
29-05-2007, 10:34
سلام
بدون شک با ++Microsoft Visual C

Farahmand Farshidy
29-05-2007, 15:07
سلام.
ممنون از شما دوست عزیز.
آیا معلومات شما در این باره دقیق است؟
ببینیم که دوستان دیگر دراین باره چه میگویند.

Hoom@n
29-05-2007, 15:44
من 100% مطمئن هستم. مایکروسافت ویژوال سی پلاس پلاس.
اگر خودت هم دوست داری می تونی دو کار بکنی :
1- بری تو ام اس دی ان بپرسی (من اونجا تاپیک نزدم اما با مسنجر از یکی از مدیرای آفریقای جنوبی اونجا پرسیدم)
2- وقتی وی بی قاط می زنه یه خطا می یاد که تو اون نوشته "میکروسافت ویژوال سی پلاس پلاس ران تایم ارور شماره ..."

_H2_
29-05-2007, 17:42
سلام

2- وقتی وی بی قاط می زنه یه خطا می یاد که تو اون نوشته "میکروسافت ویژوال سی پلاس پلاس ران تایم ارور شماره ..."

برای منحرف نشدن دوست عزیز Hoom@n و اینکه فکر اشتباهی نکنند، توضیح کوچکی میدهم.
من همچین چیزی ندیدم!!! ولی احتمل داره درست باشه ولی اگر هم درست باشه بدون شک صرفاً محدود به زمان Debug برنامه است چون در EXE یا DLL نهایی کدها واقعاً کامپایل میشوند و دیگر فرقی ندارد با چه کامپایل شده و تحت چه زبانی است.
کدی که واقعاً کامپایل شود به خودی خود اجرا میشود و نیاز به چیزی ندارد، منظورم آن است که صحیح است که VB6 با ++VC نوشته شده ولی بعد از کامپایل کدهای VB6 ، کدنهایی کامپایل شده هیچ نیازی به ++VC ندارند و به قول معروف خرشان از پل گذشته!!! :31: :31: :31:

Hoom@n
30-05-2007, 09:42
ولی من برای خودم در دو مورد این مشکل پیش اومده.
اولی : تو اینترنت اکسپلورر 6
دومی : تو وی بی
وقتی برنامه بیش از حد قاط می زدو نات رسپندینگ می شد (مثلا موقعی که یه برنامه رو با اون دیباگ می کردم ولی اون برنامه مشکل داشت و به کد ها بر می گشت) من هم به جای اینکه اون رو از تسک منجر ببندم رو قسمت های مختلف وی بی کلیک می کردم اون اتفاق می افتاد.

_H2_
30-05-2007, 10:17
سلام
عزیز دل برادر! سوء تفاهم پیش نیاید من نگفتم شما اشتباه میگویید. :10:
من گفتم اگر همچین موردی وجود داشته باشد صرفاً محدود به زبان طراحی و کلاً Debug است.

Hoom@n
30-05-2007, 12:47
خواهش می شود!

f-secure
30-05-2007, 13:03
VB با ++C نوشته شده


من برنامه نویسی بلد نیستم و خیلی هم علاقه به یاد گرفتن روش برنامه نویسی با برنامه های چون Visual Basic و C و غیره برنامه ها دارم.
اگه فكر مي كني در آينده بنا داري با برنامه نويسي زندگي كني يا كسب درآمد ، برو سراغش
چون در programming بايد مخ زيادي بذاري
كه اگه بي هدف ياد گرفته باشي به هيچ كارت نمياد...به هيچ كار
با تشكر

Farahmand Farshidy
31-05-2007, 06:20
سلام به همه شما دوستان عزیز !!!:11::11::11:
امیدوارم تا همه شما عزیزان صحتمند، خرم و پر نشاط باشید.
سوالم کاملاً حل شد.
اما عزیزان اجازه دهید تا یه سوال دیگه را مطرح نمایم.
اولین برنامه - برنامه نویسی را چگونه ساختند؟
هدفم اینست که در آن زمانی که برنامه ای برای برنامه نویسی وجود نداشت، شرکت های بزرگ مانند Microsoft چگونه برنامه ای را بنام برنامه - برنامه نویسی ساختند؟


VB با ++C نوشته شده

اگه فكر مي كني در آينده بنا داري با برنامه نويسي زندگي كني يا كسب درآمد ، برو سراغش
چون در programming بايد مخ زيادي بذاري
كه اگه بي هدف ياد گرفته باشي به هيچ كارت نمياد...به هيچ كار
با تشكر
ممنون دوست عزیز. میشه بگی که آیا برنامه نویسی بصورت مداوم( کسب در آمد نمودن از برنامه نویسی) برای شما خسته کن نمیباشد؟

بااحترام
فرهمند

Hoom@n
31-05-2007, 08:57
احتمالا باید این رو خونده باشی که زبونهای برنامه نویسی تو چهار لایه تقسیم بندی می شن . سطح پایین - میانی - سطح بالا-بسیار سطح بالا . اسمبلی و زبان ماشین هم تو قسمت زبون های سطح پایین قرار دارن . همه ی زبون های سطح های بالا هم باید ترجمه بشن به زبون ماشین تا اینکه کامپیوتر اونها رو بفهمه . و برای اطلاعات اضافی یکی از سریع ترین ترجمه ها از یک زبون به زبون ماشی مال اسمبلر هست. بدون شک اولین برنامه ها هم با دستورات قابل فهم برای کامپیوتر بوده مثل صفر و یک یا هر چیز دیگه ای که اون سخت افزار بفهمه و بعد به کمک اونها زبون هایی مثل اسمبلی که برای انسان قابل فهم تر از زبون ماشین هست درست شده و به کمک اونها هم لایه های بالاتر هم ایجاد شدن .
------------------------
برنامه نویسی به عنوان یه شغل زیاد هم خسته کننده نیست . مثلا تو یه برنامه تحت وب برای یه نهاد دولتی درست می کنی و این برنامه تو به اندازه ای باگ داره و کند هست و اینترفیس بدی داره که خودت حات بهم می خوره اون رو ببینی . اما اونا کلی به به و چه چه می کنن و به تو برای همون 2 ملیون پول می دن. یا اینکه می ری تو یه شرکت و اونا به تو می گن که یه برنامه با این ویژگی می خوان . تو هم باید ریاضی و درک قوی داشته باشی و الگوریتم اون رو مشخص کنی و برنامه رو بنویسی تا پولت رو بگیری . یا اینکه به ذهن خودت یه چیزی می رسه . میشینی اون رو برنامه می کنی و بعد با یه شرک قرارداد می بندی که اون رو توزیع کنه اگر چیز به درد بخوری باشه بالاخره یه پولی گیرت میاد که راضی شی و ...

_H2_
31-05-2007, 10:06
سلام البته کاربر Hoom@n اشاراتی داشتند، اینها را هم اضافه کنید.


اولین برنامه - برنامه نویسی را چگونه ساختند؟

اولین زبان برنامه نویسی زبان ماشین بود و برنامه نویسیان اولیه دستورات خود را مستقیم به صورت طوماری از صفر و یک ها مینوشتند، چیزی شبیه این:
01001100
11010100
11101000

بعد کمی فسفر سوزوندند و به فکر آن افتادند که زبان برنامه نویسی به وجود آورند و این بار برای راتحتی خودشان یک برنامه صفر و یکی بنویسند!
و دستورات را به متون انگیلیسی نزدیک کنند و وظیفه این برنامه آن بود که آنها متون را به کدهای صفر و یک تبدیل کند.
ما حالا به این قبیل برنامه ها کامپایلر میگوییم و به اصول و قائدی که باید در نوشتن اون متون انگلیسی رعایت بشه تا کامپایلر منظورمان را متوجه نشد، زبان برنامه نویسی میگوییم.
ضمناً این زبان اولیه نامش اسمبلی بود.



هدفم اینست که در آن زمانی که برنامه ای برای برنامه نویسی وجود نداشت، شرکت های بزرگ مانند Microsoft چگونه برنامه ای را بنام برنامه - برنامه نویسی ساختند؟

در آن زمان صفر و یکی تا جایی که من میدانم مایکروسافت وجود نداشت!



ممنون دوست عزیز. میشه بگی که آیا برنامه نویسی بصورت مداوم( کسب در آمد نمودن از برنامه نویسی) برای شما خسته کن نمیباشد؟

نه! اصلاً! ابداً! شما هربار چیز جدیدی خلق میکنید و این با قبلی فرق دارد و تاژه وقتی حاصل کارتان ، واقعاً کار میکند لذت بیشتری میبرید! آیا با به حال یک مدارالکترونیکی را که خودتان طراحی کرده باشید ساخته اید؟ یا حداقل مونتاژش کرده باشید؟ آنوقت میدانید چه حالی داره! :31: :10:

Hoom@n
01-06-2007, 11:17
بسیار متشکر برای کامل کردن مطلب

rouhallah
01-06-2007, 21:18
سلام البته کاربر Hoom@n اشاراتی داشتند، اینها را هم اضافه کنید.

اولین زبان برنامه نویسی زبان ماشین بود و برنامه نویسیان اولیه دستورات خود را مستقیم به صورت طوماری از صفر و یک ها مینوشتند، چیزی شبیه این:
01001100
11010100
11101000

بعد کمی فسفر سوزوندند و به فکر آن افتادند که زبان برنامه نویسی به وجود آورند و این بار برای راتحتی خودشان یک برنامه صفر و یکی بنویسند!
و دستورات را به متون انگیلیسی نزدیک کنند و وظیفه این برنامه آن بود که آنها متون را به کدهای صفر و یک تبدیل کند.
ما حالا به این قبیل برنامه ها کامپایلر میگوییم و به اصول و قائدی که باید در نوشتن اون متون انگلیسی رعایت بشه تا کامپایلر منظورمان را متوجه نشد، زبان برنامه نویسی میگوییم.
ضمناً این زبان اولیه نامش اسمبلی بود.


در آن زمان صفر و یکی تا جایی که من میدانم مایکروسافت وجود نداشت!


نه! اصلاً! ابداً! شما هربار چیز جدیدی خلق میکنید و این با قبلی فرق دارد و تاژه وقتی حاصل کارتان ، واقعاً کار میکند لذت بیشتری میبرید! آیا با به حال یک مدارالکترونیکی را که خودتان طراحی کرده باشید ساخته اید؟ یا حداقل مونتاژش کرده باشید؟ آنوقت میدانید چه حالی داره! :31: :10:

با سلام به دوست عزيز
اتفاقاً من هم همين سوالات تو ذهنم بود
ولي من ميخوام يه سوال بپرسم كه البته اميدوارم بلد باشين و اين سوالم يك كمي شايد از اين 00010010 ها به سطح پايين تري اشاره داشته باشه
ما اگر تو زبون ماشين بخواهيم مثلاى دو عدد رو با هم جمع كنيم بايد اول عددي رو به صورت صفر و يك وارد كنيم بعد براي تفكيك اين عدد از عملوند خود بايد يه چيزي بذاريم اين تفكيك كننده اگه فاصله باشه خود اون هم چند تا صفر و يك داره و باز مشكل تفكيك اين صفر و يك ها نيز پيش مياد پس تفكيك كننده تو پايين ترين سطح چه عنصري هست خواهش ميكنم اگه بلديد كمك كنيد

_H2_
02-06-2007, 10:34
با سلام به دوست عزيز
اتفاقاً من هم همين سوالات تو ذهنم بود
ولي من ميخوام يه سوال بپرسم كه البته اميدوارم بلد باشين و اين سوالم يك كمي شايد از اين 00010010 ها به سطح پايين تري اشاره داشته باشه
ما اگر تو زبون ماشين بخواهيم مثلاى دو عدد رو با هم جمع كنيم بايد اول عددي رو به صورت صفر و يك وارد كنيم بعد براي تفكيك اين عدد از عملوند خود بايد يه چيزي بذاريم اين تفكيك كننده اگه فاصله باشه خود اون هم چند تا صفر و يك داره و باز مشكل تفكيك اين صفر و يك ها نيز پيش مياد پس تفكيك كننده تو پايين ترين سطح چه عنصري هست خواهش ميكنم اگه بلديد كمك كنيد

سلام
فکرکنم منظورتان را متوجه شدم! احتمالاً !!!!
منظور شما آن است که CPU بخت برگشته از کجا بداند اطلاعات دریافتی یک دستور جمع است یا خود عدد مورد نظر برای جمع؟ درست میگویم، همین را میخواهید بدانید؟؟؟؟

اول بدانید که تمام واحدهای ورودی 8 بیتی هستند (یک بایت)
پس بحث میماند سر تفکیک بلوکهای بایت ها از هم نه تک بیت ها.

اولین بایتی که کشیده میشود داخل شامل نوع دستور است، مثلاً x04 کد دستور جمع یک عدد یک بایتی با محتویات ثبات AL است، و x05 و x80 و x81 و x83 و ... همه کد دستورات جمعغ هستند که در محل و مقصد جمع تفاوت دارند.
حال فرض میکنیم که CPU بایت اول را کشید و این بایت اول همان x04 خودمان بود! طبیعی است که چون AL باید با یک عدد تک بایتی جمع شود پس حتماً باید یک بایت شامل عدد مذکور هم وارد CPU شود، (گرفتید ؟! :31: ) پس حتماً در ادامه کد x04 عددی میآید که باید با AL جمع شود، یعنی بایت بعد از x04 هر چه باشد (0 یا 1 یا 2 یا 4 یا 100 یا ...) به چشم عددی دیده میشود که باید با AL جمع شود، خوب دستور فوق که کلاً شامل دوبایت بود اجرا میشود و بعد هم واضح است مجدداً اولین بایت کشیده شده (که در مثال ما و در کل بایت سوم میشود) حتماً کد دستوری جدید است و حتماً با منطق میتوان مشخص کرد که تا چند بایت بعدی داده های این دستور هستند، حتی شاید دو بایت x04 در پشت هم بیایند ولی با توجه به مثال ما x04 اولی یک دستور است و به معنی جمع ... است و x04 دومی یک داده است نه دستور و عددی است که مورد جمع قرار میگیرد و بایت بعد از این دو. بایت مجدداً دستور است و... ، یعنی بایتی که به عنوان دستور شناخته میشود مشخص میکند که طول داده های مربوطش چقدر است و به صورت غیر مستقیم مشخص میکند دستور بعدی چندمین بایت بعدی قرار دارد.
حتماً الآن فکر میکنید که اگر CPU فقط یک واحد و یک بایت در مکش دستورات اشتباه کند، همه چیز کاملاً به هم میریزد! بله کاملاً درست است اگر ثبات IP که نگه دارنده اصلی مکش دستورات است فقط یک تک مقدار جابه جا شود همه چیز .... :13:

Hoom@n
02-06-2007, 13:13
سلام مجدد.
برادر/خواهر محترم!
من هم گفتم که هر چیزی که سخت افزار حالیش بشه. به عبارتی بنا به چیزی که سخت افزار می فهمه به اون داده می دی
+++
تشکر از h2 بابت توضیح مفصل

تکنیک برتر
02-06-2007, 13:37
سلام دوستان عزیز در مورد سوال اول بگم اینکه یه سری زبان های برنامه نویسی وجود دارد که دنیا ازش خبر نداره فقط شرکت های بزرگ مثل مایکروسافت برای خودشان می سازند من تا اونجائی که می دونم مایکروسافت یه زبانی برای خودش دارد که بزرگ ترین زبان های جهان که شامل همین vb c ++c و غیره رو ناخون کوچیکش نمی شود. و به احتمال زیاد ویبی و زبان های دیگر این شرکت با اون زبان نوشته شده است . لازم نیست حرف منو باور کنید به تحقیقات بیشتر خودتان میان این دو زبان متوجه می شوید که این زبان ها ساخته یک دیگر نیستنند مگه فقط مایکروسافت مخ کامپیوتر است خیلی های دیگر هم هستنند اگر به c++ ویبی نوشته شده بود تا به امروز هزاران زبان برنامه نویسی مثل ویبی تو بازار بود پس تحقیق کنید بعد به حرف من برسید.
و اینکه

نوشته شده توسط Farahmand Farshidy مشاهده تاپيک
ممنون دوست عزیز. میشه بگی که آیا برنامه نویسی بصورت مداوم( کسب در آمد نمودن از برنامه نویسی) برای شما خسته کن نمیباشد؟
اگه بدونی هر وقت یه چیز جدید تری به پروژه ات اضافه کنی چه حالی بهت دست میده که همین الان شروع به برنامه نویسی می کنی من برای اولین بار که یه خط کد ساده نوشته بودم اینقدر خوش اومد اینقدر خوش حال شدم که نگو...
و در آخر پروژه که به اتمام می رسه اگه ضرفیت نداشته باشی سکته می کنی شوخی کردم
ممنون

rouhallah
02-06-2007, 22:25
سلام
فکرکنم منظورتان را متوجه شدم! احتمالاً !!!!
منظور شما آن است که CPU بخت برگشته از کجا بداند اطلاعات دریافتی یک دستور جمع است یا خود عدد مورد نظر برای جمع؟ درست میگویم، همین را میخواهید بدانید؟؟؟؟

اول بدانید که تمام واحدهای ورودی 8 بیتی هستند (یک بایت)
پس بحث میماند سر تفکیک بلوکهای بایت ها از هم نه تک بیت ها.

اولین بایتی که کشیده میشود داخل شامل نوع دستور است، مثلاً x04 کد دستور جمع یک عدد یک بایتی با محتویات ثبات AL است، و x05 و x80 و x81 و x83 و ... همه کد دستورات جمعغ هستند که در محل و مقصد جمع تفاوت دارند.
حال فرض میکنیم که CPU بایت اول را کشید و این بایت اول همان x04 خودمان بود! طبیعی است که چون AL باید با یک عدد تک بایتی جمع شود پس حتماً باید یک بایت شامل عدد مذکور هم وارد CPU شود، (گرفتید ؟! :31: ) پس حتماً در ادامه کد x04 عددی میآید که باید با AL جمع شود، یعنی بایت بعد از x04 هر چه باشد (0 یا 1 یا 2 یا 4 یا 100 یا ...) به چشم عددی دیده میشود که باید با AL جمع شود، خوب دستور فوق که کلاً شامل دوبایت بود اجرا میشود و بعد هم واضح است مجدداً اولین بایت کشیده شده (که در مثال ما و در کل بایت سوم میشود) حتماً کد دستوری جدید است و حتماً با منطق میتوان مشخص کرد که تا چند بایت بعدی داده های این دستور هستند، حتی شاید دو بایت x04 در پشت هم بیایند ولی با توجه به مثال ما x04 اولی یک دستور است و به معنی جمع ... است و x04 دومی یک داده است نه دستور و عددی است که مورد جمع قرار میگیرد و بایت بعد از این دو. بایت مجدداً دستور است و... ، یعنی بایتی که به عنوان دستور شناخته میشود مشخص میکند که طول داده های مربوطش چقدر است و به صورت غیر مستقیم مشخص میکند دستور بعدی چندمین بایت بعدی قرار دارد.
حتماً الآن فکر میکنید که اگر CPU فقط یک واحد و یک بایت در مکش دستورات اشتباه کند، همه چیز کاملاً به هم میریزد! بله کاملاً درست است اگر ثبات IP که نگه دارنده اصلی مکش دستورات است فقط یک تک مقدار جابه جا شود همه چیز .... :13:


فكر كنم با اين جوابتون غير مستقيم و ناخواسته بهم گفته باشين از اين سطح پايين تر وجود نداره.
ولي سطحي كه در نظر من بود و با فرض اون مشكل تفكيك شدن اطلاعات از هم برام پيش اومده بود سطحي هست كه حتي براي رايانه مبناي شانزده شانزدهي يا به قول شما هگزا دسيمال تعريف نشده همچنين ثباتهاي سي پي يو به صورت حروف الفباي انگليسي تعريف نشده مانند همين ثبات AL
مثلاً(ميدونم اشتباه هست ولي فرض ميكنيم ،چون حوصله ندارم برم ببينم عمل جمع رو به صورت صفر و يك چطور نشون ميدن)عمل جمع رو رايانه با مقدار 01010010 ميفهمه و ما ميخوهيم عدد 00000001 رو با عدد 00000010 جمع كنيم كه به اين صورت ميشه 000000010101001000000010
كه منظورم از اون صفر و يك هاي پر رنگ همون عمل جمع هست.
خب تو اين سطح ما اگه بخواهيم بين اين مقدارها فاصله بذاريم خب خود فاصله هم كدش چند تا صفر يك هست.
و همچنين به قول شما سي پي يو بايد از كجا بفهمه كه كدوم هشتايي صفر و يك، عمل جمع رو نشون ميده و كدوم عدد البته من براي ديده شدن براي خودمون هشتا از صفر و يك ها رو پر رنگ كردم وگرنه تو اون سطح پايين پايين اصلاً به اين روش تفكيك كردن امكان نداره تازه اگه همچين سطح پاييني وجود داشته باشه.
حتي از اين سطح پايين تر هم ميشه تصور كرد و اون وقتيه كه فكر كنيم همين نمايش صفر و يك هم يعني تعريف شدن براي سي پي يو كه اين دكمه كه زده شد بياد اين پيكسلها رو روشن كنه تا صفر يا يك به صورت 0 ، 1 نمايش داده بشوند.
اگر هم بازم بريم پايين تر و فرض كنيم صفحه نمايشي نداريم و نه صفه كليدي داراي صفر و يك، اون وقت بايد يه چيزي مثل دستگاه توليد رمز مورس رو بسازيم و با اون صفر و يك رو توليد كنيم البته بازم مشكل تفكيك شدن ديده ميشه.
ميدونم كمي طولاني شد ولي اينم بگم ديگه تموم ميشه . چيكار كنم ذهن كنجكاو و هزار تا سوال بي جواب

من چون هيچ كدوم از اينها قانعم نميكنه و فكر ميكنم ميشه سطح پايين پايين وجود داشته باشه دنبال جواب قانع كننده بودم كه يه بار تو تلويزيون در مورد همين صفر و يك و رايانه برنامه اي ديدم كه صفر و يك رو با يك مدار ساخته شده اين طوري تعريف كرده بود كه دو تا چراغ بودند، اگه هر دو روشن بودند يعني يك و اگر هر دو خاموش بودن يعني صفر نميدونم تو اون برنامه حالت يكي روشن يكي خاموش گفته شده بود يا نه ولي اگه اين حالت رو در نظر بگيريم ميتونيم اين حالت يكي خاموش يكي روشن رو تو اون مدار به معني تفكيك صفر يك‌هاي متوالي بگيريم.
چون تو اون مدار اگه بخواهيم دو تا 1 رو پشت سر هم نمايش دهيم چون 1 يعني هر دو چراغ روشن ، و نميتونيم با دو چراغ خاموش چون براي حالت صفر تعريف شده اند ، به عنوان تفكيك كننده استفاده كنيم . پس تنها راه تفكيك دو تا 1 يا دو تا 0 همون يك چراغ روشن و يك چراغ خاموشه.
ببخشيد سرتون رو درد آوردم حالا مخصوصاً تو اين مطلب آخر نظرتون رو بگوييد
با تشكر

_H2_
03-06-2007, 12:23
سلام

سلام دوستان عزیز در مورد سوال اول بگم اینکه یه سری زبان های برنامه نویسی وجود دارد که دنیا ازش خبر نداره فقط شرکت های بزرگ مثل مایکروسافت برای خودشان می سازند من تا اونجائی که می دونم مایکروسافت یه زبانی برای خودش دارد که بزرگ ترین زبان های جهان که شامل همین vb c ++c و غیره رو ناخون کوچیکش نمی شود. و به احتمال زیاد ویبی و زبان های دیگر این شرکت با اون زبان نوشته شده است . لازم نیست حرف منو باور کنید به تحقیقات بیشتر خودتان میان این دو زبان متوجه می شوید که این زبان ها ساخته یک دیگر نیستنند مگه فقط مایکروسافت مخ کامپیوتر است خیلی های دیگر هم هستنند اگر به c++ ویبی نوشته شده بود تا به امروز هزاران زبان برنامه نویسی مثل ویبی تو بازار بود پس تحقیق کنید بعد به حرف من برسید.


گرچه دلم نمیخواد با جوانان رشید تالار VB مخالفت کنم ولی ... :11:
هرچه فکر کردم نتونستم خودم را به حرفهایتان راضی کنم !
نمیدانم منبع خاصی دارید یا صرفاً حدسیات خودتان است؟
اما باید بگویم هر نوشته ای که انگلیسی باشد درست نیست و پیداکردن مطلبی انگلیسی دلیل بر صحت آن نیست.
همین چند وقت پیش یکی از دوستان (درسایتی دیگر) ترجمه متنی را آورده بود که VB.Net را با #C مقایسه میکرد و کلی مطالب خلاف واقع که صرفاً ناشی از بیساوادی نگارنده نصبت به VB.Net میشد را جزء معایب VB.Net بیان کرده بود،
مثلاً نگارنده گفته بود در #C به راحتی میتوان در تخصیص String های طولانی به متغییر کد را شکست و در خط بعد ادامه داد در حالی که تنها راهش در VB.Net استفاده از اپراتور '=+' است که باعث افزایش کد IL تولیدی میشود !!!!!!! :18: :18: :18:
شما خودتان VB کارید و متوجه بیسوادی فوق العاده نگارنده میشوید (هیچ بچه دبستانی که اطلاعات مختصری از VB.Net داشته باشد برای شکستن String به چند خط از '=+' استفاده نمیکند و از '_ &' استفاده میکند این از قدیم بوده و ربطی هم به VB8 ندارد و صرفاً ناشی از بیسوادی خالص نگارنده بوده) منظور کلی ام آن است که صرف انگلیسی بودن دلیل درستی نیست.

بهرحال اگر حدسیات خودتان است، امیدوارم با جملات زیر قانع شوید من بازهم از لفض «نگارنده» استفاده کرده ام چون نمیدانم حرف خودتان بوده یا از جایی نقل قول کرده اید.
من از وقتی دست چپ و راستم را شناختم (دبیرستان و راهنمایی) تا حالا که رو به ... همچنان دارم برنامه نویسی کار میکنم و تاحالا همچین چیزی نشنیده بودم!
گرچه به نوعی عاشق VB هم هستم ولی گمان میکنم حضرت عالی یا قدرت ++C را دست کم گرفته اید که فکر میکنید چیزی قوی تر از ++C باید وجود داشته باشد یا برنامه های مایکروسافت را دسته بالا گرفته اید! تلفیق ++C با Assembly یک قدرت بی حد میشه ...

البته از سابقه شما در تالار VB هم خبرم دارم! و برای جوانان رشیدی مثل شما احترامی قائل هستم و نمیخواهم جملات من را به عنوان توهین تفسیر کنید یا هر تفسیر بد دیگر! (چاکریم آقا! :10: )
من گمان میکنم نگارنده زیاد با ++C کار نکرده اید و اگر هم کار کرده باشد، هدس میزنم با لایه های زیری و قوی این زبان ارتباط برقرار نکرده باشد، مفاهیمی مثل وراثت، پلی مورفیزم، کلاسهای Template، یا Overload اپراتورها یا امکان تلفیق فوق العاده آسان کدهای این زبان با زبان زیر بنایی Assembly و... (گرچه بیشتر این مفاهیم در VB8 وجود دارد ولی حتی تا VB7 هم بیشتر این مفاهیم برای VB کارها ناآشنا و قریب بوده و از قدرت آنها بی اطلاع هستند)، اگر واقعاً به عمق این مفاهیم نفوز کنید متوجه میشوید که فوق العاده سبک و سریع الاجرا و بی نهایت قوی هستند، نمیدانم چگونه بگویم... دستور union را در ++C در نظر بگیرید، در عین سادگی و بدون مصرف کد بودن، یک قابلیت فوق العاده قوی و قدرتمند را در اختیار برنامه نویس هوشمند ++C قرار میدهد، بقیه مفاهیم پشتیبانی شده در ++C هم همینطور هستند و در عین کمترین مصرف کد و در نتیجه سرعت بالا، قویترین ابزارها را در اختیار برنامه نویس قرار میدهند، ++C مثل آتش شعله ور میمونه که اگر زیر و بمش را ندانید گیجتان میکند و باعث دردسر میشود ولی اگر بفهمید در لایه های زیر ساخت چگونه عمل میکند خیلی راحت میتوانید کدهای قوی و بینظیری بنویسید.

من سرچ نکردم، شاید باید دنبال Microsoft Secret Programming Language میگشتم! نمیدانم!
ولی بهرحال به نظر من قدرت ++C اگر با قدرت Assembly تلفیق شود هیچ جای شبهه ای و کمی و کاستی برای طراحی ویندوز-ویژوال استدیو-فریم وروک و... باقی نمیگذارد.





اگه بدونی هر وقت یه چیز جدید تری به پروژه ات اضافه کنی چه حالی بهت دست میده که همین الان شروع به برنامه نویسی می کنی من برای اولین بار که یه خط کد ساده نوشته بودم اینقدر خوش اومد اینقدر خوش حال شدم که نگو...

دقیقاً!!! در اون بارهای اول هزارها فکر به فکر انسان حجوم می آره، یک برنامه بنویسم که چپ کنه! یه برنامه بنویسم که راست کنه! یه برنامه ... و هر کدام دنیایی دارند!!! و خوشبختانه هیچ کدام شبیه دیگری نیستند.


ضمناً فقط برای دوستان کمتر مطلع یاد آور میشوم که برای طراحی یک زبان برنامه نویسی اصولاً نیازی به یگ زبان برنامه نویسی قویتر و سطح پایین تر نیست، مثلاً ما زبانی سطح پایین تر از Assembly نداریم و این در حالی است که VB جزء زبانهایی است که در رأس هرم سطحی قرار دارد و یک زبان سطح بالاست و جالب آنکه با یک سرچ کوچک میتوانید کامپایلرهایی برای Assembly پیدا کنید که با VB نوشته شده اند.! در زیر ساخت عمل کامپیل مثل تایپ است!!! برنامه کامپایلر باید کدهای باینری تولید کند و آنها را در فایلی مثلاً با پسوند exe.* تایپ کند! و این کاری است که از دست هر زبان برنامه نویسی که دسترسی به هارد داشته باشد بر می آید. بد برداشت نکنید نمیخواهم بگویم طراحی کامپایلر کار ساده ای است.


آقای تکنیک برتر جان ما میخواهیم 100 سال دیگر زندگی کنیم! (کیه که بده!) یدفعه پس فردا ما را توخیابون دیدید ... نکنیدا ! ما خودمون رفتنی هستیم! انشا ا... به زودی از شرمون راحت میشید! اما در کل انشا ا... ما باشیم، دات نت جون باشه، VB باشه، آقای تکنیک برتر هم باشه! :10:


ضمناً دوست عزیز کاربر rouhallah من مجدداً کدهای جمع دو عدد را مینویسم و توضیح خواهم داد.
ولی یک اشتباه کوچک را یادآوری میشوم کدی که شما نوشتید ایراد دارد، کدهای داخلی CPU مثا متن نوشتاری ما نیست و عملوند اصلی (دستور) در وسط نمی آید، دستور (مثلاً کد دستور جمع) همیشه در اول می آید و مشخصص کننده تعداد اطلاعات بعدی است و اعداد و سباتهای دیگر در بعد از کد دستور می آیند.

فرصت دهید با توشه ای پر تر باز میگردم!


علاما، حکما، فضلا، ادبا فعلاً بای! :40:

تکنیک برتر
03-06-2007, 15:36
_H2_ ممنون عزیز جان از مطالب مفیده خود
من در این مورد مطلب نخوندم بلکه مطمئنم به نظر شما یه زبان با کیفیت و جالبی مثلvb می توهن با زبان c نوشته باشه.
من از یه جائی هرس می خورم این ها رو میدونم می تونم اثبات کنم به همتون ولی دستم تنگه یعنی اجازه ندارم که این هارو بیان کنم. من شغلم ایجاد می کنه که اینجور مواردو بدونم ولی خارج از اون کسانی که مدارک mcsd وmcsd.net و mcadو mcda sql و اگر درس های c را خوانده باشید می فهمید که زبان ویبی با زبان c خوانده نشده اسن من تمامی مدارک فوق را دارم و کتاب 2560صفحه ای c که به زبان انگلیسی است هم خوانده ام با در نظر گرفتن کدهای موجود در c متوجه شدم که این زبانc خالق vb نیست.
ممنون

Hoom@n
03-06-2007, 16:43
براحتی می شه با سی پلاس پلاس وی بی رو ساخت. من خودم قبلا با یه پروژه با پاسکال تو داس که یکی از بیخود ترین زبون هاست یه زبون برنامه نویسی جدید ساختم. البته در اصل اون یه زبون جدید نبود و همون دستور های پاسکال رو داشت اما به صورت فارسی. و ضمنا فقط بعضی دستورات. برای اون هم فقط چند روز وقت صرف کردم. وقتی اون کار به این اندازه ساده بود حتما با سی می شه وی بی رو ساخت. البته این که صرفا دستورات رو بفهمه و مصلا به اسمبلی یا exe تبدیل کنه ساده هست ولی مسئله مربوط به زمان هایی می شه که باید کار های پیچیده تری انجام بشه که تمام اونها هم همونطور که h2 محترم گفت با اسمبلی که اون رو می شه با سی پلاس پلاس مخلوط کرد انجام شدنی هست.ضمنا من هم این رو تو ام اس دی ان مطرح می کنم . امیدوارم که من رو مسخره نکنن! البته من این موضوع رو تو اینترنت هم گشتم و نتیجه مربوطی پیدا نکردم. + ممکن هست تو مایکروسافت یه محیز برنامه نویسی دیگه هم باشه ولی اون هم با همین چیز ها ساخته شده و قطعا زبون اون هم به همین زبون ها نزدیک هست و فقط یه سری کار ها رو ممکنه ساده تر انجام بده مثلا مجموعه کد های زیادی داشته باشه تا نخوان اون کد ها رو بنویسن یا از جای دیگه ای کپی کنن و یا اینکه با امکانات ویژوال بیشتر ولی بسیار بعید هست

تکنیک برتر
08-06-2007, 04:08
خدا میدونه من که دیگه بحث و ادامه نمی دم ولی... نمی دونم چی بگم فقط یه سوال دارم از شما دوستان و بعد دیگه تو این تاپیک بحث و ادامه نمی دم شما دوستان که می گویید می شه با سی ویبی نوشت و ویبی هم میتونه خالق یه زبون دیگه ای بشه اینو دیگه همه باور دارن ولی دستورات ساخته شده هم تا چه قدر می خواهیم تغیر بدیم ....! مثلا تا چه قدر می خواهم برای یک برنامه الگوریتمی بسازیم که زیاد شباهت به زبان قبلی نداشته باشه مثلا زبان سی تا کی می خواهد زبان سی رو پیشرفته تر کنه چجوری چرا از اول ویبی 6 رو مثل ویبی 2005 منکرده بودن زمان زیادی با هم اختلاف ندارن از بحث این یه خورده می ریم اونور تر ویندوز از ابتدا تا به خواهد به بالا بیاید یک آلمه کد نوشته می شود.
کد اول باری انجام کد بعدی کدم دوم برای انجام کدی سوم ووووو .
ویندوز هم اگه می تونست از همون ابتدا اول بوت یهو زاهر می شد بعنی برای رسیدن به یک ویندوز زیبا اول یکسری کدها نوشته می شه که اون رنگ رو به بوت بشناسه همون ابندا که میزنه
microsoft
windows xp
تا به حال به فکر این اوفتاده این چرا کیفیت رنگ اون یکم بدت است چرا به کیفیت خود اصل ویندوز نیست .
یکسری کد نوشته می شه تا 10بیت رنگ تولید بشه بعد از با پشتیبانی از اون 10 بیت رنگ 22 بیت رنگ دیگه یه خورده به کیفیت اضافه می شه و بعد بازهم از پشتیبانی از همون 22 بیت رنگ رنگ اصلی 32 بیت نوشته می شه.
و جدیدال 64 بیت رنگ هم اومده این همه نوشتم که بگم برای ساخت ویبی باید استپ استپ آروم آروم با اضافه کردن کد یکسری کد یکسری کد جدید درست کنید شما می تونییه زبان برنامه نویسی با سی بنویسید که خودش بتونه زبان برنامه نویسی درست کنه و همون زبان برنامه نویسی هم بتونه زبان برنامه نویسی درست کنه آیا می تونین چون می قصد دارم دیگه در این بحث شرکت نکنم خواهشن با دلیل مطرح کنید و خواهشن به غیر از جواب سوال من جوابی بی ربت ندهید .
ممنون

Hoom@n
08-06-2007, 23:32
قطعا h2 بهتره جواب بده. اما نظر من:
قبول داری که تمام برنامه ها بعد از زبون ماشین با اسمبلی درست شدن و بعد هم با زبون های سطوح بالاتر. که نتیجه هم هر بار یه زبون سطح بالاتر بوده؟ و قبول هم داری که به فزض اگر هم کسی بخواد با سی پلاس پلاس یه زبون برنامه نویسی درست کنه (با توجه به اینکه سی پلاس پلاس یکی از کامل ترین زبون های برنامه نویسی هست) اگر جایی سی پلاس پلاس هم نتونه اون رو کمک کنه اون باید بیاد و خودش با استفاده از یه زبون سطح پایین (یا زبون ماشین و یا اسمبلی) مشکل رو برطرف کنه و چیزی رو که می خواد بسازه طوری که کامپیوتر هم اون رو بفهمه؟ با توجه به اینکه می شه تو سی پلاس پلاس از اسمبلی هم استفاده کرده باید بتونی قبول کنی که با ترکیب سی پلاس پلاس و اسمبلی می شه هر کاری کرد. به نظرت قابل قبول هست؟
(چه به نظرت قابل قبول هست و نه بهتره صبر کنی و پست h2 رو هم بخونی)

_H2_
09-06-2007, 10:15
فكر كنم با اين جوابتون غير مستقيم و ناخواسته بهم گفته باشين از اين سطح پايين تر وجود نداره.
ولي سطحي كه در نظر من بود و با فرض اون مشكل تفكيك شدن اطلاعات از هم برام پيش اومده بود سطحي هست كه حتي براي رايانه مبناي شانزده شانزدهي يا به قول شما هگزا دسيمال تعريف نشده همچنين ثباتهاي سي پي يو به صورت حروف الفباي انگليسي تعريف نشده مانند همين ثبات AL
مثلاً(ميدونم اشتباه هست ولي فرض ميكنيم ،چون حوصله ندارم برم ببينم عمل جمع رو به صورت صفر و يك چطور نشون ميدن)عمل جمع رو رايانه با مقدار 01010010 ميفهمه و ما ميخوهيم عدد 00000001 رو با عدد 00000010 جمع كنيم كه به اين صورت ميشه 000000010101001000000010
كه منظورم از اون صفر و يك هاي پر رنگ همون عمل جمع هست.
خب تو اين سطح ما اگه بخواهيم بين اين مقدارها فاصله بذاريم خب خود فاصله هم كدش چند تا صفر يك هست.
و همچنين به قول شما سي پي يو بايد از كجا بفهمه كه كدوم هشتايي صفر و يك، عمل جمع رو نشون ميده و كدوم عدد البته من براي ديده شدن براي خودمون هشتا از صفر و يك ها رو پر رنگ كردم وگرنه تو اون سطح پايين پايين اصلاً به اين روش تفكيك كردن امكان نداره تازه اگه همچين سطح پاييني وجود داشته باشه.
حتي از اين سطح پايين تر هم ميشه تصور كرد و اون وقتيه كه فكر كنيم همين نمايش صفر و يك هم يعني تعريف شدن براي سي پي يو كه اين دكمه كه زده شد بياد اين پيكسلها رو روشن كنه تا صفر يا يك به صورت 0 ، 1 نمايش داده بشوند.
اگر هم بازم بريم پايين تر و فرض كنيم صفحه نمايشي نداريم و نه صفه كليدي داراي صفر و يك، اون وقت بايد يه چيزي مثل دستگاه توليد رمز مورس رو بسازيم و با اون صفر و يك رو توليد كنيم البته بازم مشكل تفكيك شدن ديده ميشه.
ميدونم كمي طولاني شد ولي اينم بگم ديگه تموم ميشه . چيكار كنم ذهن كنجكاو و هزار تا سوال بي جواب

من چون هيچ كدوم از اينها قانعم نميكنه و فكر ميكنم ميشه سطح پايين پايين وجود داشته باشه دنبال جواب قانع كننده بودم كه يه بار تو تلويزيون در مورد همين صفر و يك و رايانه برنامه اي ديدم كه صفر و يك رو با يك مدار ساخته شده اين طوري تعريف كرده بود كه دو تا چراغ بودند، اگه هر دو روشن بودند يعني يك و اگر هر دو خاموش بودن يعني صفر نميدونم تو اون برنامه حالت يكي روشن يكي خاموش گفته شده بود يا نه ولي اگه اين حالت رو در نظر بگيريم ميتونيم اين حالت يكي خاموش يكي روشن رو تو اون مدار به معني تفكيك صفر يك‌هاي متوالي بگيريم.
چون تو اون مدار اگه بخواهيم دو تا 1 رو پشت سر هم نمايش دهيم چون 1 يعني هر دو چراغ روشن ، و نميتونيم با دو چراغ خاموش چون براي حالت صفر تعريف شده اند ، به عنوان تفكيك كننده استفاده كنيم . پس تنها راه تفكيك دو تا 1 يا دو تا 0 همون يك چراغ روشن و يك چراغ خاموشه.
ببخشيد سرتون رو درد آوردم حالا مخصوصاً تو اين مطلب آخر نظرتون رو بگوييد
با تشكر



فرصت دهید با توشه ای پر تر باز میگردم!


سلام مجدد!
در مورد زبان سازنده من دیگر بحثی نمیکنم! شاید اگر طرف حسابمان آقای تکنیک برتر نبود این بحث را تا قیامت هم ادامه میدادم ولی به هرحال ایشان الکی چیزی نمیگویند (گرچه برایم هیچ تردیدی در نظریه ++C هم به وجود نیامده و هنوز به آن ایمان دارم ولی به نظر آقای تکنیک برتر هم احترام میگذاریم!) :10:


اما در مورد بحث جداسازی دستورات، باید ببخشید داشت یادم میرفت! من اصولاً و به شدت فراموش کار هستم! (به طرز وحشتناک! :41: ) ولی به یک باره جمعه یادم آمد که گفته بودم "باز میگردم!" ....
---------------------------------------------------------------------
ما اعداد زیر را به عنوان دستور داریم و حالا میخواهیم آن را مثل CPU پردازش کنیم!:

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
خوب شروع میکنیم:
- بایت اول xB8 است و بدون شک یک دستور است! و معنی آن این است که قرار است عددی دو بایتی در AX ریخته شود، پس تا اینجا به زبان اسمبلی قابل فهم برای ما میشود ???,mov ax
- از قبل میدانیم که بایت x23 , x01 نمایانگر یک عدد دو بایتی است و این یعنی عدد x0123 (طبق قوانین پردازنده های اینتل، بایت با ارزش در آدرس بالاتر قرار میگیرد، پس x23 بایت اول و کم ارزش و x01 بایت بعدی و پر ارزش است) پس تا ایجنا به دستور mov ax,123H یا mov ax,291 میرسیم (291 عدد ده دهی x0123 میشود)
- دستور قبلی تمام شد پس بایت بعدی حتماً کد دستور جدید است، پس xBB کد دستور است و به معنی ریختن عدد دوبایتی در BX است، پس به دستور ???,mov bx میرسیم
- مجدداً دو بایت بعدی شامل یک عدد دو بایتی است که میشود عدد X0AC4 یا عدد 2756 و دستور جدید ما میشود mov bx,0AC4H یا mov bx,2756 .
- چون دستور قبلی و دنباله هایش تمام شد! بایت بعدی مجدداً کد دستور جدید است، بایت بعدی xD8 است و این به معنی اضافه شدن محتویات bx به ax است، در اصل ax و bx با هم جمع میشوند و حاصل در ax ریخته میشود. و دستور اسمبلی میشود add ax,bx .
- دستور قبلی دنباله ای نداشته و یک بایتی بوده و تمام شد و مجدداً بایت بعدی کد دستور جدید است ....

خوب ما با ترجمه این اعداد به سه دستور زیر رسیدیم:

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
و دیگر واضح است که در دستورات فوق ناشی از اجرا شدن آن اعداد باینری، دو عدد 291 و 2756 با هم جمع میشوند و حاصل در AX ریخته میشود که میتوان برای عملیاتهای بعدی مثل چاپ و نمایش و ... از آن استفاده کرد.

امیدوارم مشکلتان با چگونگی جداسازی دستورات از هم حل شده باشد.

Farahmand Farshidy
10-06-2007, 10:37
ممنون از همه شما دوستان عزیز!!
از تمام شما بخاطر رهنمایی های که نمودید یه جهان سپاس گزارم.
من دیگه تصمیممو گرفتم. میخوام یه برنامه نویس خوب و حرفوی باشم. اما مشکل من اینست که من هیچی در مورد برنامه نویسی نمیدانم. هیچی نمیدانم. حتی اصطلاحاتی را که شما برای توضیح دادن در تاپیک های خود استفاده میکنید، برای من نا آشنا است. مانند الگوریتم، وی بی و غیره.
من جداً به رهنمایی های شما ضرورت دارم. لطف نموده و به این سوالات جواب دهید:
1- من میخواهم تا یک برنامه نویس حرفوی در عرصه برنامه های گرافیکی شوم، آیا این یک هدف کامل است و میتواند برایم یک هدف خوب در عرصه برنامه نویسی باشد؟
2- برای آموختن برنامه نویسی اول باید از کدام برنامه شروع کنم Visual Basic و یا ++C ؟
3- آیا میشود بدون رفتن به کلاس های درسی و تنها با خواندن منابع اینترنتی مانند E-book ها یک برنامه نویس خوب و حرفوی شد؟
با احترام و سپاس
فرهمند.

_H2_
10-06-2007, 12:11
سلام


من دیگه تصمیممو گرفتم. میخوام یه برنامه نویس خوب و حرفوی باشم.

خوشحالم که این تاپیک موجب اقفال شدن یک نفر شد :21: ، ورود شما را به جامعه برنامه نویسان تبریک میگم! :10:



1- من میخواهم تا یک برنامه نویس حرفوی در عرصه برنامه های گرافیکی شوم، آیا این یک هدف کامل است و میتواند برایم یک هدف خوب در عرصه برنامه نویسی باشد؟

منظورتان از گرافیک چیست؟ چیزی تومایه های فتوشاپ؟! یا چیزی تومایه های تری.دی.مکس؟!



2- برای آموختن برنامه نویسی اول باید از کدام برنامه شروع کنم Visual Basic و یا ++C ؟

به نظر شخصی من VB.Net و #C برای شروع خوب هستند (هم برای شروع و هم برای ادامه راحت و بیدقدقه!)، هم ساده و هم قدرتمند، هرچی بیشتر وقت بزاری چیزهای بیشتری یادمیگیری و هیچ کس نه حرفی و نه تازه کاره (مثل من)ا بی نصیب نمی مانند.
اگر زبان های دیگر هم خاستی مشکلی وجود ندارد ولی توسیعه اکید میکنم که وقتتان را با ورژن های قدیمی و نخ نما شده تلف نکنید (مثلاً تحت DOS) هر زبانی که خواستید صرفاً از آخرین ورژنش شروع کنید.
نکته مثبت دیگر در مورد دو زبان فوق علاوه بر سادگی و قدرت توئمان، گستردگی خروجی است، شما با یکی از این دو زبان هم میتوانید برنامه معمولی درست کنید و هم تحت شبکه و هم سایت اینترنتی! به راحتی میتوانید برنامه تان را از این سر دنیا به آنطرف وصل کنید و... و همه را فقط با دانستن یک زبان واحد انجام میدهد نه سوییچ بین چند زبان.



3- آیا میشود بدون رفتن به کلاس های درسی و تنها با خواندن منابع اینترنتی مانند E-book ها یک برنامه نویس خوب و حرفوی شد؟

به نظر من هر کاری عشقت میکشد بکن ولی اگر میخواهی برنامه نویس واقعی شوی به آموزشگاه نرو!
از کتاب نترس! نه از امانت نه از خرید و از همه مهم تر از خواندن!
قبلاً که جوان بودیم افراد زیادی پیشم می آمدند و میخواستند الکترونیک یاد بگیرند ولی وقتی به آنها یک کتاب 200 صفحه ای ناقابل میدادم بعد از ماه ها اصلاً آن را نمیخواندند! آنها میخواستند با یک جمله اصرار آمیز و در عرض یک ساعت و یک روز و نهایتاً یک ماه خدای چی چی شوند!!!!! نا برده رنج ....
به قول چشم بادامی ها سعی کنید ماهی گیری یاد بگیرید نه این که هر بار که کدی را خواستید از دیگران کمک بگیرید، کمک بد نیست و بسیار خوب است و باعث پیشرفت میشود ولی استفاده بی رویه آدم را تنبل میکند و دیگر خودش دنبال چیزی نمیرود و مدام میپرسد تا سریع جوابش را بگیرد. (گرچه باز تأکید میکنم، کمک از دیگران بد نیست!)
تا آنجا که جادارد کتاب بخوانید و کدهای دیگران را تحلیل کنید و خودتان آزمایش کنید، اول بنیان تئوریک را قوی کنید و سپس به سراغ رایانه بروید، البته این کار باید مستمر باشد، مدام بخوانید و آزمایش کنید و...
در کل اگر واقعاً طالب بودید و یکی از آن دو زبان را انتخاب کردید، ما در خدمت هستیم. :10: :40:

Farahmand Farshidy
10-06-2007, 19:04
سلام دوست عزیز!!
تشکر از حسن نظر شما!!
من هم خیلی خوشحالم که شاگرد شما و دیگر استادان خوب این انجمن باشم.
هدفم از برنامه های گرافیکی همین برنامه های توی مایه های فتوشاپ است. اگر در مورد برنامه های انیمیشن ساز مانند 3dmax هم چیزی بگوئید که نور الله نور.
لطف نموده و کتابهای را که تا حال خود شما ازش استفاده برده اید و میدانید که واقعاً میشه ازشون برنامه نویسی یاد گرفت برای زبانهای که خود شما معرفی نمودید ( VB.Net و #C )، معرفی نمایید. البته که من قبلاً خدمت شما عرض نمودم که من هیچی توی برنامه نویسی بلد نیستم و از اصطلاحات برنامه نویسی کاملاً بی اطلاعم.
من کاملاً به رهنمایی های شما عمل خواهم نمود و به نظر شما از این دو زبان برنامه نویسی که معرفی نمودید ( VB.Net و #C ) کدام یک را انتخاب نمایم. من خودم که هیچ معلومات در این باره ندارم. شما اگر جای من بودید کدام یک را انتخاب مینمودید؟؟
و اما فرق بین Visual Basic و Visual Basic.net و ++C و #C چیه؟
اگر توضیح دهید، ممنون خواهم بود.
با احترام
فرهمند

_H2_
11-06-2007, 10:30
سلام


هدفم از برنامه های گرافیکی همین برنامه های توی مایه های فتوشاپ است. اگر در مورد برنامه های انیمیشن ساز مانند 3dmax هم چیزی بگوئید که نور الله نور.

مشکلی در هر دو مورد وجود ندارد، در محسط دات نت شما دسترسی کاملی به کتابخانه توابع گرافیکی +GDI را دارید ولی اگر میخواهید یک ویرایشگر تصویر مثل فتوشاپ بسازید، این کار به اطلاعاتی در مورد فورمت فایلها و طراحی الگوزیتم های خاص نیاز دارد که بعضاً شاید طراحی یک الگوریتم هفته ها زمان برد! یک چیز واضح است فتوشاپی را که ده ها استاد برنامه نویسی در طی سالیان متمادی ساخته اند یک نفر نمیتواند طراحی اش کند و نیز از قدیم گفته اند چرخ را دوبار اختراع نمیکنند! ولی این کلی بود! :31: چون مطمئن هستم قصد ساخت مجدد فتوشاپ را ندارید! :31: :31: :31:



لطف نموده و کتابهای را که تا حال خود شما ازش استفاده برده اید و میدانید که واقعاً میشه ازشون برنامه نویسی یاد گرفت برای زبانهای که خود شما معرفی نمودید ( VB.Net و #C )، معرفی نمایید. البته که من قبلاً خدمت شما عرض نمودم که من هیچی توی برنامه نویسی بلد نیستم و از اصطلاحات برنامه نویسی کاملاً بی اطلاعم.

من چند وقت قبل برای یکی از دوستان که PM زده بود لیستی از کتابها به همراه صفحات و قیمیت و... قرار دادم، میروم تا لیست را پیدا کنم!:31:



من کاملاً به رهنمایی های شما عمل خواهم نمود و به نظر شما از این دو زبان برنامه نویسی که معرفی نمودید ( VB.Net و #C ) کدام یک را انتخاب نمایم. من خودم که هیچ معلومات در این باره ندارم. شما اگر جای من بودید کدام یک را انتخاب مینمودید؟؟

همین آقای تکنیک برتر حاضر! من آموزش هایشان را ندیدم (البته به علت کمی وقت) ولی تعریفش را از دوستان شنیده ام اگر سری به تالار VB و Framework بزنید میتوانید تاپیک های آموزشی ایشان را پیدا کنید.
ضمناً در یادگیری اصولی فراموش نشود که در هر زبان برنامه نویسی تعدادی کلمه کلیدی داریم (Keyword) که برای کامپایلر آن زبان معنی خاصی دارند، سعی کنید حتماً تک تک این کلمالت را به مرور یاد بگیرید که چه میکنند.



و اما فرق بین Visual Basic و Visual Basic.net و ++C و #C چیه؟
اگر توضیح دهید، ممنون خواهم بود.
با احترام
فرهمند
VB.Net نسخه جدید VB است (و هم نیست!)
اولین نسخه کامل VB.Net در سال 2003 عرضه شد که همان VB7 است و نسخه بعدی در سال 2005 که همان VB8 است.
یعنی تا VB6 دات نتی وجود نداشت ولی VB7 و VB8 همان VB.Net هستند.
توضیحات کاملتر در مورد تکنولوژی Framework .Net را با یک سرچ کوک در تالارش پیدا خواهید کرد.

#C هم نسخه ای جدید و راحت تر از ++C است، یعنی جد #C میشود ++C (البته عده ای میگویند جدش Java است !:18: ولی من میگویم جد خود جاوا هم ++C است!:20: ) به هرحال از جد و آبادی که بگذریم، در حال حاضر منظور از #C نسخه تحت دات نت آن است که میشود گفت C#.Net .
C#.Net و VB.Net اصلی ترین و پر مصرف ترین زبان های تحت دات نت هستند که هر دو امکانات دات نت را به راحتی و کامل در اختیار برنامه نویس قرار میدهند و صرفاً در Syntax یا طرز نوشتار متقاوت هستند، البته در برخی موارد جزئی #C از VB.Net پیشی میگیرد و در برخی دیگر از موارد VB.Net از #C ولی هیچگاه برنامه نویس لنگ نمیماند و اصول شی گرایی (OOP) به دقت رعایت میشود.

زیاد حرف زدم، برم دنبال کتابها بگردم! :31: :10:

Farahmand Farshidy
12-06-2007, 15:20
سلام عزیزم.

یک چیز واضح است فتوشاپی را که ده ها استاد برنامه نویسی در طی سالیان متمادی ساخته اند یک نفر نمیتواند طراحی اش کند و نیز از قدیم گفته اند چرخ را دوبار اختراع نمیکنند! ولی این کلی بود! چون مطمئن هستم قصد ساخت مجدد فتوشاپ را ندارید!
نه عزیزم!! اصلاً و ابداً قصد چنین گستاخی بزرگ را ندارم. من بینوا کجا و شرکتی به بزرگی Adobe کجا!!! فاصله بسیار زیاد بین ما وجود دارد. شرکتی به بزرگی Macromedia نتوانست حریف Adobe شود، من که:41:
از شما خیلی سپاس گزارم. از اینکه به فکر کاربران این انجمن هستید و به خصوص به فکر کاربرانی به مثل بنده که خیلی به رهنمایی های شما ضرورت داریم.
همیشه مؤفق و کامگار باشید.
با احترام
فرهمند

_H2_
13-06-2007, 10:06
سلام
میبخشید دیر شد! :11: :11: :11:

من نگاهی به کتابخانه خودم کردم، متاسفانه چیز مناسبی برای شروع از صفر پیدا نکردم، یعنی برای کسی که اصلاً و ابداً با هیچ زبانی کار نکرده یک کم سخت است، البته شاید کتاب مناسب تر هم باشد، حالا شما مطمئن هستید که با هیچ زبانی کار نکرده اید؟ یک کم فکرکنید شاید یادتان بیاید؟ شکی، شبه ای چیزی ندارید؟ :31:

و باز هم متاسفانه من کتاب زیادی برای نسخه 2005 ندارم، بجز چند موزد که راجب ASP.Net2 و ADO.Net2 است و البته یک سری PDF جال توجه و متاسفانه انگیلیسی!

اما در همه موارد توضیحات صفر داده نشده و یک کم آشنایی لازم است.
مجدداً تاکید میکنم که سری به آموزشهای آقای تکنیک برتر هم بزنید. سوالی داشتید خودم هم در خدمت هستم.

کتابهای زیادی موجود است که من به ناچار به برخی از آنها اشاره میکنم.

کتاب نسبتاً کاملی است ولی برای 2003 است و کمی هم گران است ولی چیز خوبی است (در مورد OOP هم از کتابهای دیگر بیشتر توضیح داده) نسبتاً باحال بید.
راهنمای جامع برنامه نویسان ویژوال بیسیک Net.
نسخه : 2003
نویسنده: هاروی دیتل و پل دیتل
مترجم : بهرام پاشایی
ناشر : نشر اتحاد (66401255)
شابک : 3-65-5602-964
صفحات : 1258 صفحه
قیمت : حدود 11000 تومان

این یکی هم تقریباً مثل بالایی است!
آموزش ویژوال بیسیک Net 2003. در 21 روز
نسخه : 2003
نویسنده: استیون هولزنر
مترجم : علیرضا زارع پور
ناشر : نص (66953883)
شابک : 4-017-410-964
صفحات : 694 صفحه
قیمت : حدود 5200 تومان

کتاب مختصری در مورد VB7 که برای شروع ابدایی مناسب است.
آموزش کاربردی Visual Basic.Net
نسخه : 2003
نویسنده: تونی مارتین و دومینیک سلی
مترجم : بابک احترامی
ناشر : دانش نگار (66416176)
شابک : 2-40-5777-964
صفحات : 423 صفحه
قیمت : حدود 3700 تومان

کوچک ترین کتاب انتخابی من که فقط اصول اصلی را بیان کرده.
ویژوال بیسیک VB.Net - .Net
نسخه : 2003
نویسنده: مت تکلیافری
مترجم : محمد حسن مهدوی
ناشر : خانه نشر هزاره - نشر و پخش آیدا (66401255)
شابک : 7-7-93305-964
صفحات : 256 صفحه
قیمت : حدود 2000 تومان

چیز بدی نیست! پیشنهاد من خرید کتاب اولی به همراه این کتاب جدید است. (اگر بتوانید هزینه کنید)
معرفی Visual Basic.Net 2005 برای برنامه نویسان
نسخه : 2005
نویسنده: شون کمبل
مترجم : میر محمد جواد معتمد هاشمی
ناشر : ناقوس (66966749)
شابک : 8-5-96899-964
صفحات : 333 صفحه
قیمت : حدود 4500 تومان

در تمام کتوب قبلی راجب ADO.NET (ارتباط با بانک های اطلاعاتی) و ASP.NET (طراحی صفحات وب) هم بحث شده
ولی کتابهای نیز مخصوص این دو موضوع نگارش شده اند و البته کدهایشان با VB است و مجبورند VB را هم یاد میدهند! مخصوصاً ASP.Net ها که توضیحاتشان در مورد VB هم خیلی کامل است

آموزش کامل ارتباط راحت با اقسام بانک های اطلاعاتی.
آموزش گام به گام ADO.NET
نسخه : 2003
نویسنده: ربکا ریوردان
مترجم : مهرداد توانا و سعید هراتیان
ناشر : نقش سیمرغ (66953075)
شابک : 7-41-7323-964
صفحات : 541 صفحه
قیمت : حدود 4000 تومان

آموزش کامل ارتباط راحت با اقسام بانک های اطلاعاتی از همان نویسنده! این یکی خیلی بهتر و جدید تر است ولی کمی گران تر است.
گام به گام با ADO.NET 2.0
نسخه : 2005
نویسنده: ربکا ریوردان
مترجم : عبدالوهاب فخریاسری
ناشر : ناقوس (66966749)
شابک : 6-244-377-964
صفحات : 600 صفحه
قیمت : حدود 7500 تومان

مرجع نسبتاً کاملی در طراحی صفحات وب با VB7 ولی یک کم قدیمی ایت مثل همان کتاب خیلی خوب اولی!
مرجع کامل ASP.NET با مروری بر ASP
نسخه : 2003
نویسنده: استفان والتر
مترجم : بابک احترامی
ناشر : دانشگاه امیرکبیر واحد تفرش - دانش نگار (66416176)
شابک : 3-45-5777-964
صفحات : 606 صفحه
قیمت : حدود 4700 تومان

این هم بد نیست ولی به کاملی قبلی نیست.
کتاب آموزش ASP.NET
نسخه : 2003
نویسنده: جو مارتین
مترجم : آزیتا ذوالنور و آنیتا ذوالنور
ناشر : کانون نشر علوم (66494911)
شابک : 2-10-8230-964
صفحات : 456 صفحه
قیمت : حدود 3500 تومان

برتری این یکی آن است که طراحی صفحات وب را با VB8 آموزش میدهد ولی به نظرم بخش Web Matrix بدرد ما ایرانی ها که با خود Visual Studio کار میکنیم نمیخورد.
ASP.NET 2.0 with VB.NET 2005 and Web Matrix
نسخه : 2005
نویسنده: اولمن و کافمن و ساسمن
مترجم : علیرضا زارع پور
ناشر : نص (66412385)
شابک : 7-072-410-964
صفحات : 622 صفحه
قیمت : حدود 5800 تومان

امیدوارم این کتابها مناسبتان باشند.
منابع بسیار خوب دیگری هم برای استفاده از دیگر قابلیت های عظیم فریم وروک و تحت VB وجود دارد.

حتی در صورت تسلط میتوانید از منابع #C هم استفاده کنید چون VB8 و 2#C بسیار شبیه هم هستند و کدهایشان به راحتی قابل تبدیل است.

Farahmand Farshidy
15-06-2007, 08:42
سلام دوست عزیز!!
نمیدانم از شما چگونه تشکری نمایم عزیزم زیرا مهربانی هایت بیشتر از این است که با یک تشکر ولو که از صمیم قلب هم باشد، قدر دانی گردند.
کوشش میکنم تمام کتابهایی را که شما تأکید به مطالعه آنها نمودید، پیدا کنم. البته سعی و کوشش من در این خواهد بود تا نسخه PDF شده آنها را بیابم. اگر شما نسخه PDF این کتابها را در سایتی سراغ دارید، لطفاً آدرسش را برایم بنویسید. البته خودم هم در جستجوی شان هستم و همین آلان هم مشغول جستجو در سایت کتابخانه ایران هستم [ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ] .
و یک بار دیگر هم از شما تشکر میکنم و امیدوارم تا همکاری هایتان را با بنده دوام دهید.
با احترام
فرهمند

_H2_
16-06-2007, 10:11
سلام
متاسفانه و با عرض شرمندگی نسخه های Pdf خودم صرفاً انگلیسی هستند و البته هیچ وقت دنبالش نگشتم وگرنه شاید پیدا میکردم، در هر صورت در این مورد لینکی ندارم تاا کمکتان کمک ولی احتمال زیادی دارد که چیزهای خوبی پیدا کنید.
موفق و پیروز باشید.

Mohsen6558
16-06-2007, 15:41
سلام به دوستان نظر من اینه که درست مایکروسافت توی نوشتم ویژوال از C استفاده کرده اما نه این سی بلکه اونو باز کردن قویتر کردن و باهاش اینو درست کردن و به بازار ندادن تا دست رقبا نیافته

در ضمن توصیه من برای اولین آموزش C# هست به سادگی ویژ<ال به قدرتمندی C++ من هم به خاطر درس مجبور شدم وی بی آموزش ببینم و الا واسه بعد از کنکور برنامه ریختم کلا وی بی رو فراموش کنم C# یاد بگیرم اینم یه مرجع کامل :

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

_H2_
16-06-2007, 17:12
سلام

سلام به دوستان نظر من اینه که درست مایکروسافت توی نوشتم ویژوال از C استفاده کرده اما نه این سی بلکه اونو باز کردن قویتر کردن و باهاش اینو درست کردن و به بازار ندادن تا دست رقبا نیافته

احتمالاً



در ضمن توصیه من برای اولین آموزش C# هست به سادگی ویژ<ال به قدرتمندی C++ من هم به خاطر درس مجبور شدم وی بی آموزش ببینم و الا واسه بعد از کنکور برنامه ریختم کلا وی بی رو فراموش کنم C# یاد بگیرم

تند نرو دل انگیز بابا! :28: اگر دلیلی بر چربیدن قدرت و سادگی #C نصبت به VB.Net دارید در خدمت هستیم!
فقط بد نیست بدانید که من خودم در چندین تاپیک بحث در مورد #C و VB.Net در فروم های دیگر حضور داشتم و اگر بخواهم قرض ورزی نکنم و طرف VB.Net را نگیرم میگویم: دست آخر هیچ کدام از دو طرف نتوانستند دیگری را کنار بزنند.
#C دیگر آن ++C نیست! به قول دوستی، به پای #C و VB.Net همان قل و زنجیر Net. را بسته اند!

البته من مدت هاست که دات نت کار میکنم و اصلاً نمیگویم VB.Net بهتر است یا #C بلکه میگویم برابر هستند و صرف علاقه شخص به سینتکس مهم است.

rouhallah
18-06-2007, 16:03
سلام مجدد!
در مورد زبان سازنده من دیگر بحثی نمیکنم! شاید اگر طرف حسابمان آقای تکنیک برتر نبود این بحث را تا قیامت هم ادامه میدادم ولی به هرحال ایشان الکی چیزی نمیگویند (گرچه برایم هیچ تردیدی در نظریه ++C هم به وجود نیامده و هنوز به آن ایمان دارم ولی به نظر آقای تکنیک برتر هم احترام میگذاریم!) :10:


اما در مورد بحث جداسازی دستورات، باید ببخشید داشت یادم میرفت! من اصولاً و به شدت فراموش کار هستم! (به طرز وحشتناک! :41: ) ولی به یک باره جمعه یادم آمد که گفته بودم "باز میگردم!" ....
---------------------------------------------------------------------
ما اعداد زیر را به عنوان دستور داریم و حالا میخواهیم آن را مثل CPU پردازش کنیم!:

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
خوب شروع میکنیم:
- بایت اول xB8 است و بدون شک یک دستور است! و معنی آن این است که قرار است عددی دو بایتی در AX ریخته شود، پس تا اینجا به زبان اسمبلی قابل فهم برای ما میشود ???,mov ax
- از قبل میدانیم که بایت x23 , x01 نمایانگر یک عدد دو بایتی است و این یعنی عدد x0123 (طبق قوانین پردازنده های اینتل، بایت با ارزش در آدرس بالاتر قرار میگیرد، پس x23 بایت اول و کم ارزش و x01 بایت بعدی و پر ارزش است) پس تا ایجنا به دستور mov ax,123H یا mov ax,291 میرسیم (291 عدد ده دهی x0123 میشود)
- دستور قبلی تمام شد پس بایت بعدی حتماً کد دستور جدید است، پس xBB کد دستور است و به معنی ریختن عدد دوبایتی در BX است، پس به دستور ???,mov bx میرسیم
- مجدداً دو بایت بعدی شامل یک عدد دو بایتی است که میشود عدد X0AC4 یا عدد 2756 و دستور جدید ما میشود mov bx,0AC4H یا mov bx,2756 .
- چون دستور قبلی و دنباله هایش تمام شد! بایت بعدی مجدداً کد دستور جدید است، بایت بعدی xD8 است و این به معنی اضافه شدن محتویات bx به ax است، در اصل ax و bx با هم جمع میشوند و حاصل در ax ریخته میشود. و دستور اسمبلی میشود add ax,bx .
- دستور قبلی دنباله ای نداشته و یک بایتی بوده و تمام شد و مجدداً بایت بعدی کد دستور جدید است ....

خوب ما با ترجمه این اعداد به سه دستور زیر رسیدیم:

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
و دیگر واضح است که در دستورات فوق ناشی از اجرا شدن آن اعداد باینری، دو عدد 291 و 2756 با هم جمع میشوند و حاصل در AX ریخته میشود که میتوان برای عملیاتهای بعدی مثل چاپ و نمایش و ... از آن استفاده کرد.

امیدوارم مشکلتان با چگونگی جداسازی دستورات از هم حل شده باشد.
با تشكر از راهنماييتان
من حرف شما رو قبول دارم اما اين در صورتي هست كه ما براي زبان ماشين بجاي برخي صفر و يكها معادلهايي قرار داده باشيم مثلاً براي سخت افزار تعريف كرده بايم كه كلمه AX چيه كه ميدونم اين تعاريف رو تو خود مدار سخت افزاري انجام ميدن
ولي اگز اين كار رو انجام نداده باشن و فقط ما به جز دو كاراكتر 0 و 1 هيچ چيز ديگري رو نتونيم بكار بريم اون وقت چطوري اين مجموعه هاي صفر و يك از هم تفكيك ميشن چون بالطبع فاصله هم نميتونيم بكار بريم
تازه اين كه خوبه
اگه حتي اين دو كاراكتر 0 و 1 هم تعريف نشده بودند اون وقت بايد با قطع و وصل كردن مدار به رايانه صفر و يك رو ميفهمونديم و اون وقت مشكل جدي تري كه ايجاد ميشد اين بود كه اگر قطع جريان به معني صفر باشه چطور عبارتي كه دو تا صفر يا بيشتر كنار هم داره رو به رايانه بفرستيم و همين طور براي 1
با تشكر

Mehran NZ
19-06-2007, 02:56
اساتید محترم سلام ببخشید می پرم وسط بحث
می تونم از شما اساتید یه سوال ساده بپرسم؟البته شرمنده که اینجا مطرح می کنم ولی بنظرم ایقدر مسخرس که ارزش تاپیک زدن نداره
از طریق vb یا c یا .......می شه سایت طراحی کرد یا حتما باید php و html و..... بلد باشیم؟

_H2_
19-06-2007, 10:30
سلام

با تشكر از راهنماييتان
من حرف شما رو قبول دارم اما اين در صورتي هست كه ما براي زبان ماشين بجاي برخي صفر و يكها معادلهايي قرار داده باشيم مثلاً براي سخت افزار تعريف كرده بايم كه كلمه AX چيه كه ميدونم اين تعاريف رو تو خود مدار سخت افزاري انجام ميدن
ولي اگز اين كار رو انجام نداده باشن و فقط ما به جز دو كاراكتر 0 و 1 هيچ چيز ديگري رو نتونيم بكار بريم اون وقت چطوري اين مجموعه هاي صفر و يك از هم تفكيك ميشن چون بالطبع فاصله هم نميتونيم بكار بريم
تازه اين كه خوبه
اگه حتي اين دو كاراكتر 0 و 1 هم تعريف نشده بودند اون وقت بايد با قطع و وصل كردن مدار به رايانه صفر و يك رو ميفهمونديم و اون وقت مشكل جدي تري كه ايجاد ميشد اين بود كه اگر قطع جريان به معني صفر باشه چطور عبارتي كه دو تا صفر يا بيشتر كنار هم داره رو به رايانه بفرستيم و همين طور براي 1
با تشكر
من اصلاً متوجه نمیشوم!!!! به نظر من خیلی واضح است که چگونه بلاک های اطلاعات جدا میشوند با وجودی که فضای سفید وجود ندارد و فقط صفر است و یک!
شما با تفکیک دستورات مشکل داری یا تفکیک اطلاعات کلی در RAM، مثلاً اینکه یک عکس که در RAM است از کجا شروع میشود و کجا تمام میشود؟!

ضمناً قطع بودن جریان برابر نیست با صفر دیجیتال!!!
جهت جریان است که صفر یا یک بودن را مشخص میکند ! این یک اصل ابتدایی در مدارت دیجیتال استريال شما اگر ورودی دیجیتالی را به جایی وصل نکنید این بدان معنا نیست که به آن صفر میدهید!!!

_H2_
19-06-2007, 10:36
سلام

اساتید محترم سلام ببخشید می پرم وسط بحث
می تونم از شما اساتید یه سوال ساده بپرسم؟البته شرمنده که اینجا مطرح می کنم ولی بنظرم ایقدر مسخرس که ارزش تاپیک زدن نداره
از طریق vb یا c یا .......می شه سایت طراحی کرد یا حتما باید php و html و..... بلد باشیم؟
لطف فرمودید!!!
شما با ASP میتوانید مثل PHP و به کمک زبان های اسکریپتی کدنویسی صفحات را انجام دهید (VBScript یا JavaScript) و ASP.Net هم که برای خود تکنلرژی ای دارد!!(:31: نه بابا اشتباه املایی نیست! شما همان تکنلرژی بخوانید! حالش بیشتره!)
شما با ASP.Net و یکی از زبان های تحت دات نت مثل VB.Net و #C میتوانید صفحه وب را به سادگی برنامه های ویندوزی بسازید! (سایت خود مایکروسافت با ASP.Net است)
حتی جالب آنجاست که اگر امکان دارد بخشی از کدها را به شما بدهند و اصلاً متوجه نشوید این کدها برای برنامه ویندوزی بود یا برای پروژه وب سایت!
یعنی در ASP.net شما با سادگی و قدرت تمام میتوانید اقدام به ساخت دصفحات وب کنید (در صورت تسلط!)
اصلاً اصرار من بر دات نت برای همین است! شما اگر یک زبان تحت دات نت را مسلط شوید، اولاً که در زبان های دیگر تحت دات نت هم تسلط خوبی پیدا میکنید و دو ماً محدوده عظیمی از پروژه ها و برنامه ها را قادر خواهید بود بسازید، بدون انکه بخواهید دات نت را با زبان دیگر تلفیق کنید و مدام بین زبان های مختلف سوییچ کنید.

Mehran NZ
19-06-2007, 14:16
ببخشید یکم گنگم و زیاد سوال می پرسم اخه اول راهم و به کمک شما بزرگان نیاز دارم
h2 جان من الان دارم php یاد می گیرم و الان به قسمت شی گرایی و بانکهای اطلاعاتی رسیدم الان چیکار کنم؟
بنظر شما کار بی خودیه؟ ولش کنم؟یا همین هم خوبه و ادامش بدم؟
در زبانهای دات نت دیگه لازم نیست که کدهامون و با زبانهایی مثل html و javascript تلفیق کنیم؟
یه چیز دیگه من خودم همیشه دوست داشتم در اینده c++ رو بعنوان زبان اصلی قرار بدم چون می خوام بازی سازی رو یاد بگیرم حالا ایا این c++ نسخه دات نت هم داره ؟
مرسی از توجهت

_H2_
19-06-2007, 17:09
سلام

ببخشید یکم گنگم و زیاد سوال می پرسم اخه اول راهم و به کمک شما بزرگان نیاز دارم
h2 جان من الان دارم php یاد می گیرم و الان به قسمت شی گرایی و بانکهای اطلاعاتی رسیدم الان چیکار کنم؟
بنظر شما کار بی خودیه؟ ولش کنم؟یا همین هم خوبه و ادامش بدم؟
در زبانهای دات نت دیگه لازم نیست که کدهامون و با زبانهایی مثل html و javascript تلفیق کنیم؟
یه چیز دیگه من خودم همیشه دوست داشتم در اینده c++ رو بعنوان زبان اصلی قرار بدم چون می خوام بازی سازی رو یاد بگیرم حالا ایا این c++ نسخه دات نت هم داره ؟
مرسی از توجهت
برای وب سایت PHP هم زبان خوبی است ولی به راحتی دات نت نیست و امام مزیت بزرگ PHP نصبت به ASP.Net که باعث محبوبیت آن شده اول این است که اصول کارش بر Write است که این هم خوب است و هم بد! خوب به خاطر آنکه دیگر برنامه نویس دلش یک دل است که روش بهتری وجود ندارد و مسیر کد نویسی هر جوری که بروید تقریباً واحد است ولی در دات نت میتوان برای یک کار از چندین روز و کنترل استفاده کرد و مزیت دوم هم که از اولی بسیار مهمتر است و موجب رشد PHP شده قیمت است! سرورهای پشتیبانی کننده ASP.Net2 و SQLServer جزء سرورهای گران و پیشرفته با امکانات زیاد محسوب میشوند در حالی که تمام سرورهای ویندوزی و لینوکسی از کوچک و بزرگ و ارزان و گران PHP را ساپورت میکنند!
اما قدرت و امکانات پیشرفته ASP.Net در صورت تسلط فرد میتواند خیلی راحت و سریعتر و مطمئن تر یک وب سایت را بسازد و نیز به راحتی میتوان کدها را با دیگر زبان های دات نت تلفیق کرد و نیز با یاگیری ان میتوان خیلی راحت برای ویندوز هم برنامه نوشت.

در مورد ++C هم در دات نت، بهترین گزینه C#.Net است که مثل VB.Net سادگی و قدرت را یکجا دارد ولی C++.Net هم وجود دارد که سخت تر از VB.Net و C#.net است.

Mehran NZ
19-06-2007, 17:34
مرسی h2 جان این سوالم و یادت رفت این و جواب بدی دیگه حله

در زبانهای دات نت دیگه لازم نیست که کدهامون و با زبانهایی مثل html و javascript تلفیق کنیم؟

rouhallah
19-06-2007, 20:35
سلام

من اصلاً متوجه نمیشوم!!!! به نظر من خیلی واضح است که چگونه بلاک های اطلاعات جدا میشوند با وجودی که فضای سفید وجود ندارد و فقط صفر است و یک!
شما با تفکیک دستورات مشکل داری یا تفکیک اطلاعات کلی در RAM، مثلاً اینکه یک عکس که در RAM است از کجا شروع میشود و کجا تمام میشود؟!

ضمناً قطع بودن جریان برابر نیست با صفر دیجیتال!!!
جهت جریان است که صفر یا یک بودن را مشخص میکند ! این یک اصل ابتدایی در مدارت دیجیتال استريال شما اگر ورودی دیجیتالی را به جایی وصل نکنید این بدان معنا نیست که به آن صفر میدهید!!!

خوب حالا من اينو نميدونستم ولي در اين صورت كه جهت جريان مشخص كننده صفر و يك باشد
چطور ما ميتونيم دو تا صفر رو به رايانه بفرستيم
چون شما گفتيد جهت جريان براي صفر و يك بودن در نظر گرفته ميشه ما چطور ميتونيم دو بيت به دستگاه بفرستيم كه هر دو در يك جهت باشه
نميدونم اين الانم به ذهنم رسيد با توجه به گفته شما پس عامل تفكيك كننده ميتونه قطع جريان باشه
اگه اين طور هست لطفاً بگوييد
با تشكر

_H2_
20-06-2007, 10:32
سلام


در زبانهای دات نت دیگه لازم نیست که کدهامون و با زبانهایی مثل html و javascript تلفیق کنیم؟
بحث Client:Javascript و html یک کم جدا از زبان برنامه نویسی سمت سرور است.
شما با هر زبانی که کار کنید آز زبان کدهای شما را تبدیل به html میکندد و به مرورگر در خواست کننده میفرستد و مثلاٌ اینترنت اکسپلورر چیزی که از خروجی صفحات php و asp و asp.net در یافت میکند در همه موارد html است یعنی برد کارکرد زبان های فوق فقط در سرور است و در رایانه Client ما فقط میتوانیم با html و javascript یا VBScript کار کنیم، پس شما در هیچ زبانی بینیاز از این دو نمیشوید چون برنامه وب دو سویه است، یک سویش در سرور (که حق انتخاب زبان و محیط با شماست) و یک سویش در کلاینت که شما حق انتخابی ندارید.

ولی نکته ی که در مورد ASP.Net وجود دارد، آن است که نیاز شما به کد نویسی مستقیم html و Client:Javascript را بشدت کاهش میدهد و تا جایی که جا دارد خودش این کار ها را انجام میدهد و محیط را برای شما مثل یک محیط برنامه نویسی ویندوزی و exe معمولی شبیه سازی میکند، این تاحدی قوی است که با محیط خود VS.Net میتوان سایت طراحی کرد و خودتان اصلاٌ کد html و javascript تایپ نکنید ولی اگر بخواهید مثل php کارها با notepad کار کنید و از ویرایشگر قدرتمند VS.Net کمک نگیرید نیاز به نوشتن کدهای html پیدا میکنید و نیز در برخی موارد خاص برای اعمال خاص شاید نیاز به کد نویسی مستقیم Client:Javascript هم پیدا کنید.

_H2_
20-06-2007, 10:59
سلام

خوب حالا من اينو نميدونستم ولي در اين صورت كه جهت جريان مشخص كننده صفر و يك باشد
چطور ما ميتونيم دو تا صفر رو به رايانه بفرستيم
چون شما گفتيد جهت جريان براي صفر و يك بودن در نظر گرفته ميشه ما چطور ميتونيم دو بيت به دستگاه بفرستيم كه هر دو در يك جهت باشه

تا الآن در صفر و یک نرم افزاری شناور بودید، حالا ابهامات الکترونی - پروتونی هم شروع شد! میگم بیخیال! ولی ما در خدمت هستیم! اما اگر اطلاعات الکترونیکی نداشته باشید کمی سخت میشود!
در RAM که مسدله مشخص است، شما یک ورودی دارید و یک خروجی، RAM همواره عددی را به خروجی میدهد که آدرسش در ورودی است.
مثلاً شما آدرس یک نقطه را به RAM میدهید (قبلش هم آدرس دیگری موجود بوده و خروجی RAM عدد مربوط به آن را نشان میداده) به محض تغییر ورودی RAM داده مورد نظر را در خروجی میدهد و شما که اول آدرس را فرستاده بودید حالا جواب را از باس دیتا میخوانید، هیچ قطع و وصلی در کار نیست!!!!؟؟؟

پس یک بار دیگر میگویم، گیتهای دیجیتال نیازی به تشخیص اول و آخر داده ها ندارند! آنها همواره خروجی خود را با توجه به ورودی تنظیم میکنند و اصلاً برایشان مهم نیست کجا شروع داریم و کجا پایین.
اما چیزی که شما پرسیدید، ممن را یاد مدارات سریال انداخت، در ارتباطات سریال که مثلاً بین دو رایانه صورت میگیرد (مثل اینترنت با خط تلفن و مودم) اطلاعات پشت سر هم فرستاده میشوند در این مدارت خروجی مودم امکان دارد از قوانین دیجیتال پیروی نکند، یعنی مودم اطلاعات دیجیتال را میگیرد(صفر یا یک) و آن را به چیزی تبدیل میکند که مودم دیگر بتواند در آن سر جهان متوجه شود، این چیز میانه موجود در سیم انتقال معمولاً ماهیتی مودولاسیونی دارد و کلاً بحثش فرق دارد و مودم ها از راه های مختلفی برای جداسازی داده ها استفاده میکنند، سیگنالهای همزمانی (مثل ارسال تصویر تلویزیون) یا ارسال با فرکانس ثابت (مثل ارتباط میکروپروسسرها) و....

کامپیوترتان که کار میکند؟ چگونه گی اش را بسپارید به دست متخصصات الکترونیک و بیخیالش شوید! :46: :31:
(البته در هر صورت تا جایی که وقت اجازه دهد جواب گو هستم)



نميدونم اين الانم به ذهنم رسيد با توجه به گفته شما پس عامل تفكيك كننده ميتونه قطع جريان باشه
اگه اين طور هست لطفاً بگوييد

اصلاً، ابداً، به هیج وجه! حتی فکرش را هم نکنید! مدارات دیجیتال در دو سطح کار میکنند، یا صفر یا یک و سطح سومی به هیچ وجه وجود ندارد!
فقط در برخی مدارات استفاده شده برای گذرگاه ما این حالت را داریم که به آن حالت امپدانس بالا یا ایزوله میگویند که این حالت هم اصلاً ربطی به جداسازی ندارد و بحث بر سر آزاد سازی گذر گاه برای اتصال یک واحد دیگر است، یعنی چندین واحد عملیاتی دیجیتالی برای ارتباط از یک باس و گذرگاه استفاده میکنند، در نتیجه شما میتوانید چندین گیرنده داشته باشید ولی فرستنده اطلاعات در هر لحظه باید واحد باشد (وگرنه اتصال کوتاه رخ میدهد) در نتیجه خروجی های گذرگاه یک حالت سوم به نام امپدانس بالا هم دارند که موجب قطع کلی مدارات از باس میشود و مدار کنترل کننده باس در هر لحظه تصمیم میگیرد که باس در اختیار کدام واحد باشد و در این زمان کلیه واحدهای خروجی دیگر روی آن باس به حال امپدانس بالا میروند.
البته همین مسئله هم بیشتر به جای پیاده سازی با مدارات سه حالته به کمک خروجی های کلکتور باز صورت میگرد و با مقاومت های بالابرنده سطح یک منطقی تامین میشود.
اما در کل در باسها هم در هیچ لحظه ای (حتی برای چند میکروثانیه) خطوط اصلی انقال باس در وضعیت امپدانس بالا قرار نمیگیرند و همواره از یک و فقط یک خروجی تغذیه میشوند و یا در حال انتقال صفر هستند یا یک و لاغیر!

موفق و سربلند باشید.
(اما عجب تاپیکی شد! خودش یک تالار است! :31: )

Mehran NZ
20-06-2007, 15:46
سلام

بحث Client:Javascript و html یک کم جدا از زبان برنامه نویسی سمت سرور است.
شما با هر زبانی که کار کنید آز زبان کدهای شما را تبدیل به html میکندد و به مرورگر در خواست کننده میفرستد و مثلاٌ اینترنت اکسپلورر چیزی که از خروجی صفحات php و asp و asp.net در یافت میکند در همه موارد html است یعنی برد کارکرد زبان های فوق فقط در سرور است و در رایانه Client ما فقط میتوانیم با html و javascript یا VBScript کار کنیم، پس شما در هیچ زبانی بینیاز از این دو نمیشوید چون برنامه وب دو سویه است، یک سویش در سرور (که حق انتخاب زبان و محیط با شماست) و یک سویش در کلاینت که شما حق انتخابی ندارید.

ولی نکته ی که در مورد ASP.Net وجود دارد، آن است که نیاز شما به کد نویسی مستقیم html و Client:Javascript را بشدت کاهش میدهد و تا جایی که جا دارد خودش این کار ها را انجام میدهد و محیط را برای شما مثل یک محیط برنامه نویسی ویندوزی و exe معمولی شبیه سازی میکند، این تاحدی قوی است که با محیط خود VS.Net میتوان سایت طراحی کرد و خودتان اصلاٌ کد html و javascript تایپ نکنید ولی اگر بخواهید مثل php کارها با notepad کار کنید و از ویرایشگر قدرتمند VS.Net کمک نگیرید نیاز به نوشتن کدهای html پیدا میکنید و نیز در برخی موارد خاص برای اعمال خاص شاید نیاز به کد نویسی مستقیم Client:Javascript هم پیدا کنید.

مرسی ایول عجب اطلاعات توپی داری
ببینم حالا برای یادگیری دات نت یک برنامه نویسی اول باید خود برنامه نویسی رو بلد باشیم یا نه مستقیما می تونیم دات نت یاد بگیریم؟!

speaker
20-06-2007, 16:26
خوب اون کسی که می گه با برنامه c++ نوشتن می تونه بگه برنامه c++ رو با چه برنامه ای نوشتن؟؟؟؟؟؟؟

prolinux
20-06-2007, 17:03
قطعا زبان های متوسطی مانند Vb توسط زبان سطح بالای ++c نوشته شده است.

_H2_
20-06-2007, 17:26
سلام

خوب اون کسی که می گه با برنامه c++ نوشتن می تونه بگه برنامه c++ رو با چه برنامه ای نوشتن؟؟؟؟؟؟؟
چیه؟ میخواهید قضیه مرغ و تخم مرغ بسازید!!!! :31: نه نمیتوانید!
همانطور که گفتم، با زبانی که بتواند کد کامپایل شده بسازد و در صورت تسلط بر هدرهای PE میتوان کامپایلر تولید کرد. منظورم آن است که حتماً نباید زبان مادر سازنده یک زبان دیگر خیلی خفن باشد!

در کل به نظر من ++VC را با نسخه قبلی ++VC و ترکیب با کد اسمبلی ساخته اند. (البته باز هم به نظر من!)
همانطور که دوستی در چند پست قبل هم گفت من هم احتمال میدهم که مایکروسافت نسخه ای خاص از ++C داشته باشد (چیزی مشابه نظریه آقای تکنیک برتر) ولی همچنان میگویم خالق VB و ++VC بدون شک ++VC است و خالق ++VC هم خودش است، ولی طبیعی است که مایکروسافت برای خودش کتابخانه خاصی از توابع را داشته باشد که آن را در ++VC برای پروژه های خود استفاده کند و آن را منتشر نکرده باشد.
(تقریباً همه برنامه نویسان یک مجموعه ای از کتابخانه توابع شخصی را دارند.!)

_H2_
20-06-2007, 17:33
سلام

مرسی ایول عجب اطلاعات توپی داری
ببینم حالا برای یادگیری دات نت یک برنامه نویسی اول باید خود برنامه نویسی رو بلد باشیم یا نه مستقیما می تونیم دات نت یاد بگیریم؟!

برای یادگیری زبان های تحت دات نت از صفر هم میتوان شروع کرد و به ذات مشکلی وجود ندارد و خیلی ساده تر از هر زان دیگری هم میتوان مفاهیم را به افراد آموزش داد ولی متاسفانه من در کتابخانه کوچکم، کتاب مناسبی برای شروع از صفر پیدا نکردم در حالی که تا حالا چندین کتاب مناسب برای شروع از صفر تحت دیگر زبانها دیده ام. منظورم آن است که مشکل صرفاً به فقدان منبعی مناسب باز میگردد. :13: (شاید هم کتاب شروع از صفر با دات نت باشد و من ندیده باشم)
ولی شما که گفته بودید PHP کار کرده بودید، و این خیلی خیلی خوب است، چون مفاهیم پایه را میدانید (متغیر چیست و به چه درد میخورد؟ انواع متغیر؟ فرآیند کنترل و حلقه و پرش و... رویدادگرایی و...) پس نیازی به کتاب صفر کیلومتر ندارید و میتوانید با هر کتاب دات نتی شروع کنید.

فقط باید شروع کنید!!:31: همت داشته باشید و در راه خواندن صبور باشید (چون بیشتر ما ایرانی ها حاضریم لغمه را دور سرمان بچرخانیم ولی یک کتاب 200 یا 300 صفحه ای ناچیز نخوانیم!!! کلی میگویم )

Mehran NZ
20-06-2007, 19:10
نه من پاسکال هم بلد م وبامفاهیم اولیه اشنام منظورم این بودکه اگه بخوایم مثلا c#.net رو یادبگیریم حتما اول باید c# کار کنیم یانه همین جوری می تونیم بریم سر داتنتش؟

_H2_
21-06-2007, 10:03
سلام

نه من پاسکال هم بلد م وبامفاهیم اولیه اشنام منظورم این بودکه اگه بخوایم مثلا c#.net رو یادبگیریم حتما اول باید c# کار کنیم یانه همین جوری می تونیم بریم سر داتنتش؟

گفتم، هیچ مشکلی ندارد، مخصوصاً برای شما که با برنامه نویسی آشنا بوده اید و الآن میتوانید با هر کتابی کار کنید.
دات نت هم چیز عجیب و غریبی نیست که فکر کنید، کجکی یا راستگی است و یادگیرش فیل هموا کردن است! :31:

آنهم یک زبان برنامه نویسی است، مثل بقیه، و با مزیت اصلی، یک کتاب خانه بزرگ چند هزار ماژولی که تقریباً برای هرکار مهمی، ماژول خاصی دارد و شما را از کدنویسی صفر بی نیاز میکند.
مثلاً در هیچ یک از زبانهای برنامه نویسی فعلی بجز دات نت ماژول تقویم هجری شمسی به صورت داخلی وجود ندارد و شما یا باید از یک فایل دیگر تامینش کنید یا خودتان کدش را بنویسید، اما شما در دات نت بدون Include یک DLL یا ActiveX و به صورت بومی کلاسس هجری شمسی را دارید.
اصلی ترین دلیل رقبت برنامه نویسان به دات نت همین کتابخانه عظیم چند هزار ماژولی فریم وروک است که هرکاری را برای شما انجام میدهد و بدون نیاز به هیچ فایل خارجی میتوانید از امکاناتش استفاده کنید و وقتی با سینتکس روان Vb.net و C#.net تلفیق میشود، یک زبان ساده و روان و در عین حال فوق العاده قدرتمند را میسازد.

rouhallah
21-06-2007, 15:29
سلام

تا الآن در صفر و یک نرم افزاری شناور بودید، حالا ابهامات الکترونی - پروتونی هم شروع شد! میگم بیخیال! ولی ما در خدمت هستیم! اما اگر اطلاعات الکترونیکی نداشته باشید کمی سخت میشود!
در RAM که مسدله مشخص است، شما یک ورودی دارید و یک خروجی، RAM همواره عددی را به خروجی میدهد که آدرسش در ورودی است.
مثلاً شما آدرس یک نقطه را به RAM میدهید (قبلش هم آدرس دیگری موجود بوده و خروجی RAM عدد مربوط به آن را نشان میداده) به محض تغییر ورودی RAM داده مورد نظر را در خروجی میدهد و شما که اول آدرس را فرستاده بودید حالا جواب را از باس دیتا میخوانید، هیچ قطع و وصلی در کار نیست!!!!؟؟؟

پس یک بار دیگر میگویم، گیتهای دیجیتال نیازی به تشخیص اول و آخر داده ها ندارند! آنها همواره خروجی خود را با توجه به ورودی تنظیم میکنند و اصلاً برایشان مهم نیست کجا شروع داریم و کجا پایین.
اما چیزی که شما پرسیدید، ممن را یاد مدارات سریال انداخت، در ارتباطات سریال که مثلاً بین دو رایانه صورت میگیرد (مثل اینترنت با خط تلفن و مودم) اطلاعات پشت سر هم فرستاده میشوند در این مدارت خروجی مودم امکان دارد از قوانین دیجیتال پیروی نکند، یعنی مودم اطلاعات دیجیتال را میگیرد(صفر یا یک) و آن را به چیزی تبدیل میکند که مودم دیگر بتواند در آن سر جهان متوجه شود، این چیز میانه موجود در سیم انتقال معمولاً ماهیتی مودولاسیونی دارد و کلاً بحثش فرق دارد و مودم ها از راه های مختلفی برای جداسازی داده ها استفاده میکنند، سیگنالهای همزمانی (مثل ارسال تصویر تلویزیون) یا ارسال با فرکانس ثابت (مثل ارتباط میکروپروسسرها) و....

کامپیوترتان که کار میکند؟ چگونه گی اش را بسپارید به دست متخصصات الکترونیک و بیخیالش شوید! :46: :31:
(البته در هر صورت تا جایی که وقت اجازه دهد جواب گو هستم)


اصلاً، ابداً، به هیج وجه! حتی فکرش را هم نکنید! مدارات دیجیتال در دو سطح کار میکنند، یا صفر یا یک و سطح سومی به هیچ وجه وجود ندارد!
فقط در برخی مدارات استفاده شده برای گذرگاه ما این حالت را داریم که به آن حالت امپدانس بالا یا ایزوله میگویند که این حالت هم اصلاً ربطی به جداسازی ندارد و بحث بر سر آزاد سازی گذر گاه برای اتصال یک واحد دیگر است، یعنی چندین واحد عملیاتی دیجیتالی برای ارتباط از یک باس و گذرگاه استفاده میکنند، در نتیجه شما میتوانید چندین گیرنده داشته باشید ولی فرستنده اطلاعات در هر لحظه باید واحد باشد (وگرنه اتصال کوتاه رخ میدهد) در نتیجه خروجی های گذرگاه یک حالت سوم به نام امپدانس بالا هم دارند که موجب قطع کلی مدارات از باس میشود و مدار کنترل کننده باس در هر لحظه تصمیم میگیرد که باس در اختیار کدام واحد باشد و در این زمان کلیه واحدهای خروجی دیگر روی آن باس به حال امپدانس بالا میروند.
البته همین مسئله هم بیشتر به جای پیاده سازی با مدارات سه حالته به کمک خروجی های کلکتور باز صورت میگرد و با مقاومت های بالابرنده سطح یک منطقی تامین میشود.
اما در کل در باسها هم در هیچ لحظه ای (حتی برای چند میکروثانیه) خطوط اصلی انقال باس در وضعیت امپدانس بالا قرار نمیگیرند و همواره از یک و فقط یک خروجی تغذیه میشوند و یا در حال انتقال صفر هستند یا یک و لاغیر!

موفق و سربلند باشید.
(اما عجب تاپیکی شد! خودش یک تالار است! :31: )

با سلام مجدد به دوست خوبم احتمال ميدم به احتمال 90 درصد اين آخرين سلام من در اين زمينه به شما خواهد بود البته اگر خدا يه ايراد ديگه اي به صورت سوال در مورد عملكرد رايانه برام پيش نياره
منو بگو فكر ميكردم سوالاتم رو فقط اون سازندگان اصلي و ابتدايي رايانه ميتونن جواب بدن
ولي وقتي اين طوري شما دندون شكن تمام مسائلم رو نصبت به رايانه حل كرديد خيلي خوشحال شدم
و كاملاً البته فعلاً قانع شدم

من اين مسائل رو اون قدر دور از دسترس ميدونستم كه فكر ميكردم جزء اسرار عملكرد رايانه هاست
نگو كه در اشتباه بودم
باز هم كمال تشكر رو از شما دارم
ببخشيد اذيتتون كردم

reza.majazi
21-06-2007, 15:32
kooooooooooooooooooooooob booooooooooooooooooooooood

_H2_
21-06-2007, 15:49
سلام و خسته نباشید!

با سلام مجدد به دوست خوبم احتمال ميدم به احتمال 90 درصد اين آخرين سلام من در اين زمينه به شما خواهد بود البته اگر خدا يه ايراد ديگه اي به صورت سوال در مورد عملكرد رايانه برام پيش نياره
منو بگو فكر ميكردم سوالاتم رو فقط اون سازندگان اصلي و ابتدايي رايانه ميتونن جواب بدن
ولي وقتي اين طوري شما دندون شكن تمام مسائلم رو نصبت به رايانه حل كرديد خيلي خوشحال شدم
و كاملاً البته فعلاً قانع شدم

من اين مسائل رو اون قدر دور از دسترس ميدونستم كه فكر ميكردم جزء اسرار عملكرد رايانه هاست
نگو كه در اشتباه بودم
باز هم كمال تشكر رو از شما دارم
ببخشيد اذيتتون كردم

بازم زیاد دسته بالا رفتید! اینها اصلاً اطلاعات زیادی نیستند! و اصلاً سری هم نیستند، هر کسی که چیزی از دیجیتال بداند، اینها را میداند، و اینطور نیست که کسی که بداند دیگر ....

من هم که میدانم به ان علت است که من از الکترونیک و دیجیتال به برنامه نویسی رسیدم!
یعنی وقتی مدام میخواستم مدارات قوی تری بسازم که چند عمل را همزمان انجام دهند و با دیپ سوییچ ها و امثال اینها بتوان وظیفه مدار را تغییر داد، به مدارات میکروپروسسوری رسیدم، Z80 و 8051 و... و دیدم چه مدار جالبی هستند، با کمک تغییر یک سری عدد در ROM میتوان وظیفه شان را تغغیر داد!! (عجب! چه زیبا! مدار الکترونیکی که با وجودی که بردش طراحی شده و لحیم کاری اش هم تمام شده باز هم میتوان وظیفه شا را تغییر داد!!!!! واقعاً اعجاب انگیز و زیبااست! و آدرم را وصوصه میکند!) بعد هم ادامه دادم و هرچی کتاب 8086 و 8051 و... گیر آوردم خواندم تا اول با QB و ASm آشنا شدم و دیگر برنامه نویسی و الکترونیک را با هم ادامه دادم تا بالاخره نرم افزار جوان بر سخت افزار پیر چربید! و الکترونیک و دیجیتال را ول کردم. (عجب رمانتیک! :31: )

در نتیجه شما اگر با مدارات دیجیتال (مثلاً کتاب معروف مدارات منطقی موریس مانو) و میکروپروسسوری آشنایی داشته باشید میتوانید انبوه مطالب فوق را در کتوب انها پیدا کنید. باور کنید خیلی راحت است، دیجیتال برعکس آنالگو بسیار راحت است، همیشه میدانید در ورودی یا صفر است یا یک و خروجی یا باید صفر باشد و یا یک، هیچ ابهامی وجود ندارد و همه چیز صد در صد قابل پیش بینی است! و همین مسئله باعث استقبال عمومی شده، چون هم برای مهندسان بهتر است و هم برای کاربران (از آن جهت که دستگاه در مقابل پارازیت امنیت و اختشاش امنیت خیلی بالایی پیدا میکند، چون ولتاژ 3 ولت و 5 ولت برای مدار دیجیتال فرقی ندارد و معنی یک منطقی میدهد و در حالی که در انالوگ میتواند باعث اشتباهات فجیحی شود.)

راستی در مورد مدارات کلکتور باز در دیجیتال هم مطلبی وجود دارد که کمی برخلاف تصور عموم است ولی فکر کنم بحث زیادی منحرف بشود....
بهرحال باز هم اگر سوال داشتید در حد وقتم در خدمت هستم! :46:

babababak
24-06-2007, 21:04
سلام به همه دوستان
من یه سوالی داشتم اگه خیلی بیربط بود به بزرگواری خودتون ببخشید

میخاستم بدونم این نرم افزار حافظ شیرازی یا رباعیات خیام جدیدو با کدوم زبان برنامه نویسی نوشتند.

میبخشید دیگه جایی نتونستم مطرحش کنم
سپاس

_H2_
25-06-2007, 10:18
سلام
اگر احیاناً، احتمالاً، شاید منتظر جواب من هستید، باید بگم شرمنده اخلاق ورزشی، من که نرم افزارش را ندیدم!!!! در کل فرقی هم نمیکند!