KomputerPengaturcaraan

"Apa ini" ia pada timbunan, "bahawa ia" datang kembali: asas abstrak realiti

Mungkin dalam beberapa perniagaan pengkomputeran masa depan melupakan satu dan sifar, dan pemproses tidak akan beroperasi pada bait dan kata-kata, tetapi dunia binari setakat ini semuanya diwakili dan hidup dengan peringatan-Nya. Apa yang timbunan dan di mana ia terpakai - mungkin benar-benar jelas. Seawal awal kemunculannya adalah daftar yang pemproses pertama, dan logik kerjanya adalah memerlukan ingatan. Hasil daripada idea yang mudah timbunan "bahawa ia" telah menjadi de facto "yang perlu."

pemproses fungsi, logik perduaan

pemproses mengawal memori dan melaksanakan logik pelaksanaan kod kitaran. program - satu atau satu set fungsi yang mewakili satu urutan operasi: untuk memilih sesuatu untuk berbuat demikian adalah untuk meletakkan sesuatu. sistem operasi - kod yang sama, lebih bertanggungjawab: ia diberi mandat untuk melaksanakan dan mengawal program lain.

Sebenarnya berfungsi (algoritma unsur bebas) - hanya urutan operasi binari. Program ini berbeza daripada fungsi yang menyedari dirinya dan menyelaras bahagian lain kod.

Diterima algoritma reka bentuk sebagai urutan elemen yang berasingan dan berbeza. Setiap membawa (biasanya satu sahaja) fungsi sendiri - ia adalah mudah untuk debugging, visual, praktikal. pengaturcaraan ini membolehkan untuk memudahkan proses pembangunan, untuk mewujudkan perpustakaan algoritma dan menggunakan mereka dalam projek-projek lain.

Menghantar dan Mengembalikan Pengurusan

program panggilan fungsi, lulus ia data, mengira hasilnya. Sejak pelaksanaan bahagian kod lain dimulakan dari luar, kerana kawalan pulangan yang harus dilakukan pada panggilan seterusnya untuk operasi. Mekanisme ini disediakan oleh perintah pelaksanaan kod dan pencapaian hasil program secara keseluruhannya.

Kod dimuatkan ke dalam memori dan dilaksanakan secara berurutan. Untuk memanggil fungsi (satu lagi kod), timbunan digunakan. Apa yang ia? Memori (dan penunjuk kepadanya), yang berbeza dari biasa di mana setiap elemen berturut-turut diletakkan di atas yang sebelumnya. Kerana untuk mendapatkan sesiapa sahaja yang di bawah, anda perlu untuk bekerja dan semua yang ada di atasnya. Penunjuk sentiasa menghala ke kedudukan semasa dalam timbunan.

Pada mulanya, timbunan mendapat alamat kembali - alamat berikut operasi panggilan. Kemudian meletakkan semua data yang diperlukan untuk fungsi yang dipanggil. Yang dipanggil fungsi memilih data, memprosesnya, dan menjana kawalan pulangan hasil kepada elemen terakhir tindanan. Pasukan "stack ia" menggerakkan penuding yang lama diberikan, dan memilih "ia" pergi ke pemprosesan.

Daftar AX, BX, CX, DX, EX menjadi simbol permulaan era era maklumat, tetapi SP dan SS - adalah maskot utamanya. Bagaimana untuk menggunakan timbunan pengaturcaraan? Contoh masa lalu tidak akan menjadi monumen seni bina era awal. Stack datang ke dunia binari, bersama-sama dengan "fungsi" kata-kata dan "rekursi" dan hilang ke dalam logik umum amalan pengaturcaraan.

Berkhidmat kepada data untuk membuat keputusan apa yang perlu dilakukan

Menyusun mekanisme membolehkan berbilang panggilan ke pelbagai bahagian kod, termasuk rekursi: fungsi yang memanggil dirinya. Terdapat had semula jadi: saiz memori untuk timbunan dan kod hendaklah mencukupi. Jika program ini betul, maka prestasinya akan stabil, pengurusan pemindahan / pulangan - tepat.

Stack penuh, kerana plat berbohong dalam longgokan, yang dihantar untuk meletakkan meja. Nasib plat, iaitu, kandungan mereka, diselesaikan di tempat di mana ia dihantar. Menurut logik interaksi, pasukan "timbunan, ia" memberikan yang telah diatur ini antara mereka yang dipanggil, dan orang-orang yang dipanggil-Nya. Setelah selesai proses ini, ia adalah penting untuk kembali kawalan ke alamat berikut satu yang menghantar timbunan di atas meja.

logik sangat mudah dan berkesan. Apa yang di atas meja, kerana keputusan dibuat - ia berfungsi sebagai ia pergi dengan penemuan - kebimbangannya apa jadual ia akan menghantar timbunan data - penjagaannya, perkara utama adalah untuk sentiasa kembali kawalan untuk cabaran seterusnya untuk operasi. fungsi boleh memanggil dirinya hanya jika ia mengakui rekursi, tetapi rekursi hanya boleh dilakukan jika data jatuh ke dalam tindanan.

Abstraksi asas

Apabila biasa dan menjadi asas kepada perspektif praktikal, hampir, kita boleh menjangka dengan berpatutan untuk bersikap objektif, dan kehidupan panjang yang kedua. A timbunan pinggan melahirkan timbunan, dan timbunan disediakan pemproses kerja, sistem operasi, program, fungsi, dan sektor berteknologi tinggi secara keseluruhan.

kes klasik adalah asas kes yang mudah, tetapi jarang berlaku apabila ia boleh dianggarkan tanpa pertikaian kosong tentang sintaksis, semantik, pengaturcaraan pengaturan dan keutamaan dalam perjuangan untuk survival bahasa.

Sebahagiannya adalah sel memori, dan ia kekal hingga ke hari ini, tetapi itu idea ia telah berubah. Yakin melalui medan menaip kuat, mereka kini mendakwa bahawa sesuatu yang boleh menjadi apa-apa dan tahan dalam ingatan sebenar apa-apa, kerana ia sudah agak penting.

pengendali tugasan, syarat, gelung, blok ... berubah jauh lebih kecil dari segi maknanya, juga, sintaks untuk masa yang lama tidak mengapa. Berjuang untuk cita-cita bahasa pengaturcaraan tidak diberi peluang untuk memenangi salah satu daripada mereka. Tools (pengkompil / jurubahasa / shell) adalah bertanggungjawab untuk hanya bekerja, stabil dan berciri penuh, dan bagaimana dan apa yang perlu menulis / digunakan - menjaga programmer, bukan bahasa penulis.

Stack telah memperoleh peranan baru dalam proses global pembangunan idea-idea dan teknologi. Pembolehubah dalam bentuk di mana mereka telah dengan mudah menindih satu sama lain, dan algoritma dan pengendali adalah termasuk dalam satu sama lain. Anda sering boleh mendengar tentang timbunan protokol, apabila seseorang memberikan pekerjaan yang berbeza.

Stack, fungsi dan rekursi - tidak sinonim, tetapi mereka melengkapi antara satu sama lain dengan sempurna, membolehkan anda untuk membuat versi unik penyerahan dan pemprosesan maklumat.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 ms.atomiyme.com. Theme powered by WordPress.