Tekil Mesaj gösterimi
Alt 11 Temmuz 2014, 10:22   #1
Çevrimdışı
Swat
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Seri Çarpma Devresi ve Simülasyonu




C++ Builder 5 projesidir.

Seri çarpma devresiyle binary ve decimal sayıların nasıl çarpıldığını simülasyon ile gösterir. Çarpmak istediğimiz sayılar Input ve Multiplier register'lara yerleştirilir.Input Reg. ile Multiplier Reg.'in son bit AND'lenir. Sonuç ile Acc. Reg. Adder Unit'te toplanır ve Acc. Reg'a kaydırılır. Sağdan taşan bit Mult. Reg.'in başına kaydırılır. Sonuç Accumulator Reg.dan Multiplier Reg.'a doğru okunur.

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
//--------------------------------------------------------------------------- #include <vcl.h> #pragma hdrstop #include "Unit1.h" #include "kaydir.cpp" //--------------------------------------------------------------------------- #pragma package(smart_init) #pragma resource "*.dfm" TForm1 *Form1; int dur=0; int interv; //--------------------------------------------------------------------------- __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { } //--------------------------------------------------------------------------- void __fastcall TForm1::Button1Click(TObject *Sender) { seri_carpma.Initialize1(); Timer1->Enabled=false; LabelInitialize_1(Label1); if(Bin->Checked==true) seri_carpma.BinToArray(Edit1->Text.Length(), Edit2->Text.Length(), Edit1->Text, Edit2->Text); else seri_carpma.DecToArray(Edit1->Text, Edit2->Text); Label_SayiGirdi(Label1); seri_carpma.NewInitialize(); PulseCiz(Label1); Button_Initialize(Button2); } //--------------------------------------------------------------------------- void __fastcall TForm1::Button2Click(TObject *Sender) { seri_carpma.Initialize2(); LabelInitialize_2(Label3); Timer1->Enabled=true; seri_carpma.analitik_cizgi(Canvas); seri_carpma.andlogic(); seri_carpma.analitik_ilk_satir(Canvas); seri_carpma.adder(); seri_carpma.analitik_diger_satirlar(Canvas); seri_carpma.last_Initialize(); ButtonInitialize_2(Button2); } //--------------------------------------------------------------------------- void __fastcall TForm1::Timer1Timer(TObject *Sender) { Kaydir_ToAnd(Label4); Kaydir_ToAdder(Label4); Kaydir_ToAcc(Adder); Kaydir_ToMult(Label8); } //--------------------------------------------------------------------------- void __fastcall TForm1::Image3Click(TObject *Sender) { if(dur%2==0) Timer1->Enabled=false; else Timer1->Enabled=true; dur++; } //--------------------------------------------------------------------------- void __fastcall TForm1::Image4Click(TObject *Sender) { interv++; Timer1->Interval=50+interv*7; } //--------------------------------------------------------------------------- void __fastcall TForm1::Image5Click(TObject *Sender) { if(interv==-7) interv=-7; else interv--; Timer1->Interval=50+interv*7; } //--------------------------------------------------------------------------- void __fastcall TForm1::Image2Click(TObject *Sender) { Image6->Visible=true; } //--------------------------------------------------------------------------- void __fastcall TForm1::Image6Click(TObject *Sender) { Image6->Visible=false; } //---------------------------------------------------------------------------


 
Alıntı ile Cevapla

IRCForumlari.NET Reklamlar
sohbet odaları reklamver bizimmekan