KomputerPemrograman

"Apa ini" itu di stack, "bahwa" kembali: dasar abstrak realitas

Mungkin dalam beberapa bisnis komputasi masa depan melupakan satu dan nol, dan prosesor tidak akan beroperasi pada byte dan kata-kata, tapi sejauh ini semuanya diwakili dunia biner dan hidup dengan aturan. Apa stack dan di mana itu berlaku - kemungkinan menjadi benar-benar jelas. Pada awal awal penampilannya register prosesor pertama, dan logika karyanya membutuhkan memori. Sebagai hasil dari ide sederhana tumpukan "yang" telah menjadi de facto "yang diperlukan."

Fungsi prosesor, logika biner

Prosesor mengontrol memori dan mengimplementasikan logika eksekusi kode siklik. program - satu atau satu set fungsi yang mewakili urutan operasi: untuk memilih sesuatu untuk melakukannya adalah dengan menempatkan sesuatu. Sistem operasi - kode yang sama, lebih bertanggung jawab: itu diberi mandat untuk melaksanakan dan mengendalikan program-program lainnya.

Benar-benar berfungsi (elemen independen algoritma) - hanya urutan operasi biner. Program ini berbeda dari fungsi yang menyadari dirinya sendiri dan mengkoordinasikan bagian lain dari kode.

algoritma desain diterima sebagai urutan elemen terpisah dan berbeda. Setiap membawa (biasanya hanya satu) fungsi sendiri - itu adalah nyaman untuk debugging, visual, praktis. pemrograman ini memungkinkan untuk menyederhanakan proses pembangunan, untuk membuat perpustakaan algoritma dan menggunakannya dalam proyek-proyek lainnya.

Mengirim dan Pengembalian Manajemen

Program panggilan fungsi, lewat itu data, menghitung hasilnya. Sejak pelaksanaan bagian kode lain dimulai dari luar, karena kontrol kembali harus dilakukan pada panggilan berikutnya untuk operasi. Mekanisme ini disediakan oleh urutan eksekusi kode dan pencapaian hasil program secara keseluruhan.

Kode dimuat ke memori dan dieksekusi secara berurutan. Untuk memanggil fungsi (sepotong kode), stack digunakan. Apa itu? Memori (dan pointer untuk itu), yang berbeda dari biasa dalam setiap elemen berturut-turut ditempatkan di atas sebelumnya. Karena untuk mendapatkan siapa saja yang di bawah ini, Anda perlu mengambil untuk bekerja dan semua yang ada di dalamnya. Pointer selalu menunjuk ke posisi saat ini di stack.

Awalnya, tumpukan mendapat alamat pengirim - alamat berikut operasi panggilan. Kemudian untuk menempatkan semua data yang diperlukan untuk disebut fungsi. Fungsi yang disebut memilih data, proses mereka, dan menghasilkan kontrol hasil kembali ke elemen terakhir dari stack. Tim: "tumpukan itu" bergerak pointer ke sebelumnya diberikan, dan dipilih "itu" pergi ke pengolahan.

Register AX, BX, CX, DX, EX menjadi simbol awal era era informasi, tetapi SP dan SS - adalah maskot utamanya. Cara menggunakan setumpuk pemrograman? Contoh masa lalu tidak akan monumen arsitektur dari era awal. Stack datang ke dunia biner, bersama-sama dengan kata-kata "fungsi" dan "rekursi" dan menghilang ke logika umum praktek pemrograman.

Sajikan data untuk memutuskan apa yang harus dilakukan

Mekanisme susun memungkinkan beberapa panggilan ke berbagai bagian kode, termasuk rekursi: fungsi memanggil dirinya. Ada batas-batas alam: ukuran memori untuk stack dan kode harus memadai. Jika program ini benar, maka kinerjanya akan stabil, manajemen Transfer / kembali - tepat.

Stack penuh, seperti piring berbaring di tumpukan, yang dikirim untuk meletakkan meja. Nasib piring, yaitu, konten mereka, diselesaikan di tempat di mana itu ditransmisikan. Menurut logika interaksi, tim "stack, itu" memberikan pra-diatur antara orang-orang yang disebut, dan orang-orang yang disebutnya. Setelah menyelesaikan proses itu penting untuk mengembalikan kontrol ke alamat berikut salah satu yang dikirim tumpukan di atas meja.

Sangat sederhana dan efektif logika. Apa yang ada di meja, seperti keputusan dibuat - berfungsi sebagai kelanjutannya dengan temuan - keprihatinannya pada apa meja itu akan mengirimkan setumpuk data - kepeduliannya, hal utama adalah untuk selalu kembali kontrol untuk tantangan berikutnya untuk operasi. fungsi tersebut dapat menyebut dirinya hanya jika mengakui rekursi, tapi rekursi hanya mungkin jika data jatuh ke tumpukan.

Abstraksi mendasar

Ketika biasa dan menjadi dasar dari perspektif praktis, hampir, kita bisa mengharapkan untuk bersikap objektif, dan umur panjang dari yang terakhir. Tumpukan piring melahirkan stack, dan stack disediakan prosesor kerja, sistem operasi, program, fungsi, dan sektor teknologi tinggi secara keseluruhan.

kasus klasik adalah dasar dari kasus sederhana, namun jarang terjadi ketika dapat diperkirakan tanpa sengketa kosong tentang sintaks, semantik, pengaturan pemrograman dan prioritas dalam perjuangan untuk kelangsungan hidup bahasa.

Sebagian seperti sel memori, dan tetap sampai hari ini, tapi itu ide itu telah berubah. Percaya diri melewati tebal mengetik kuat, mereka sekarang mengklaim bahwa sesuatu bisa apa saja dan terus dalam memori nyata dari apa-apa, karena itu sudah cukup penting.

operator penugasan, kondisi, loop, blok ... berubah jauh lebih kecil dari segi maknanya, juga, sintaks untuk waktu yang lama tidak masalah. Berjuang untuk cita-cita bahasa pemrograman tidak diberikan kesempatan untuk memenangkan salah satu dari mereka. Tools (compiler / interpreter / shell) wajib hanya bekerja, stabil dan fitur lengkap, dan bagaimana dan apa yang harus menulis / penggunaan - merawat programmer, bukan bahasa penulis.

Stack telah mengakuisisi makna baru dalam proses global pengembangan ide-ide dan teknologi. Variabel dalam bentuk di mana mereka telah nyaman ditumpangkan pada satu sama lain, dan algoritma dan operator termasuk dalam satu sama lain. Anda dapat sering mendengar tentang stack protokol, ketika salah satu menyediakan pekerjaan yang berbeda.

Stack, fungsi dan rekursi - tidak identik, tetapi mereka saling melengkapi satu sama lain dengan sempurna, yang memungkinkan Anda untuk membuat versi unik dari pengajuan dan pengolahan informasi.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

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