Terus ke kandungan
IGCSE·Tuition
Sains Komputer · Pelajaran

Kaitkan daftar dengan peranannya

Lima nama daftar cepat bercampur apabila soalan menerangkan satu peristiwa dan bertanya daftar mana yang terlibat.

Dalam halaman ini
  1. Apakah yang disimpan setiap daftar?
  2. Contoh berlangkah
  3. Kesilapan yang perlu diawasi
  4. Semak kendiri
  5. Ke mana selepas ini

Setiap daftar dalam model yang dipermudah mempunyai satu tugas, dan jawapan yang baik menamakan daftar mengikut apa yang disimpannya: alamat, sekeping data, arahan semasa, alamat seterusnya atau hasil kerja.

Pelajaran ini bersambung daripada menjejak kitaran arahan dan tergolong dalam perkakasan dan pemprosesan. Seterusnya anda akan melihat tempat atur cara dan fail disimpan.

Apakah yang disimpan setiap daftar?

DaftarMenyimpanBerubah apabila
PC (pembilang atur cara)Alamat arahan seterusnyaDitambah semasa setiap fetch; ditulis ganti oleh lompat
MAR (daftar alamat memori)Alamat lokasi yang sedang dibaca atau ditulisFetch bermula, atau arahan muat atau simpan berjalan
MDR (daftar data memori)Data atau arahan yang baru dibaca, atau akan ditulisMemori dibaca atau ditulis
CIR (daftar arahan semasa)Arahan yang sedang dinyahkod dan dilaksanakanFetch selesai
ACC (penumpuk)Nilai kerja dan hasil aritmetik atau logikArahan muat, aritmetik atau logik dilaksanakan

Dua bahagian bekerja bersama daftar. ALU (unit logik aritmetik) melakukan pengiraan dan perbandingan.

Unit kawalan menyahkod arahan dan menghantar isyarat kawalan. Daftar berada di sebelah kedua-duanya dalam pemproses.

Tiga bas (bus) membawa isyarat antara pemproses dan memori: bas alamat (alamat), bas data (data dan arahan) dan bas kawalan (isyarat kawalan seperti baca atau tulis).

Contoh berlangkah

ACC menyimpan 20 dan alamat 500 menyimpan 9. Arahan dalam CIR ialah ADD 500, dan arahan seterusnya berada pada alamat 41. Soalan bertanya: namakan daftar bagi setiap pernyataan.

  • “Ia menyimpan 500 semasa memori dicapai.” Ini alamat, jadi MAR.
  • “Ia menyimpan 9 selepas memori dibaca.” Ini data, jadi MDR.
  • “Ia menyimpan ADD 500 semasa decode.” Ini arahan, jadi CIR.
  • “Ia menyimpan 41.” Alamat arahan seterusnya ialah PC. (Ia sudah ditambah semasa fetch.)
  • “Ia menyimpan 29 selepas arahan selesai.” Hasilnya ialah ACC, kerana 20 + 9 = 29.

Setiap jawapan dipilih dengan bertanya “apakah jenis perkara ini: alamat, data, arahan atau hasil?”

Kesilapan yang perlu diawasi

Pelajar kerap mengatakan MAR menyimpan data kerana MAR “bersambung dengan memori”.

Jawapan yang salah: “MAR menyimpan nilai 9 yang dibaca daripada alamat 500.”

Nilai itu data, dan data melalui MDR. MAR menyimpan alamat 500.

Betulkan dengan memasangkan daftar: MAR dengan bas alamat, MDR dengan bas data. MAR juga tidak sama dengan PC. PC menyimpan alamat arahan seterusnya; MAR menyimpan apa-apa alamat yang sedang dicapai sekarang, sama ada arahan atau lokasi data.

Semak kendiri

1. Satu arahan simpan menulis 44 ke alamat 310. Daftar mana menyimpan 310 dan mana menyimpan 44 sejurus sebelum penulisan?

Lihat jawapan

MAR menyimpan 310 (alamat). MDR menyimpan 44 (data yang akan ditulis).

2. Selepas satu fetch, PC menyimpan 77. Alamat mana yang diambil, dengan andaian PC bertambah 1 setiap fetch?

Lihat jawapan

PC ialah 76 sebelum fetch, jadi arahan datang dari alamat 76. MAR menyimpan 76 semasa fetch.

3. Betul atau salah: penumpuk menyimpan arahan yang sedang dilaksanakan. Beri satu sebab.

Lihat jawapan

Salah. CIR menyimpan arahan. Penumpuk menyimpan nilai yang sedang dikira dan hasilnya.

Ke mana selepas ini

Gunakan jadual di atas sebagai senarai semak semasa menyiapkan set latihan perkakasan dan pemprosesan. Pelatih jejak pseudokod terhad ialah tempat yang baik untuk melihat daftar berubah mengikut turutan.

Menamakan daftar yang betul ialah kemahiran kecil, tetapi di situlah banyak markah perkakasan diperoleh atau hilang. Guru dalam tuisyen Computer Science dalam talian satu dengan satu boleh melatih anda dengan senario baharu sehingga anda menjawab tanpa teragak-agak.

Soalan lazim

Apakah beza antara MAR dan MDR?

MAR menyimpan alamat: lokasi dalam memori yang akan dibaca atau ditulis. MDR menyimpan data atau arahan yang baru dibaca daripada, atau akan ditulis ke, lokasi itu. Ujian pantas: jika ia menamakan satu tempat, ia MAR; jika ia satu nilai, ia MDR.

Adakah penumpuk (ACC) sama dengan ALU?

Tidak. ALU ialah litar yang melakukan aritmetik dan logik. Penumpuk ialah daftar yang menyimpan nilai yang digunakan oleh ALU dan hasil yang dikeluarkannya. Terangkan ALU sebagai pelaku pengiraan dan ACC sebagai penyimpan apa yang sedang diproses.

Apakah yang dilakukan unit kawalan dengan daftar?

Unit kawalan menyahkod arahan dalam CIR dan menghantar isyarat kawalan supaya bahagian yang betul bertindak pada masa yang betul, contohnya menyuruh memori membaca atau ALU menambah. Ia tidak menyimpan data anda. Dalam jawapan, sebutnya sebagai bahagian yang menyelaras kitaran.

Sumber rujukan

  1. Laman sukatan Cambridge IGCSE Computer Science 0478

Dikemas kini:

Langkah seterusnya

Jika anda masih meneka antara MAR dan MDR apabila ayat soalan berubah, guru satu dengan satu boleh memberi senario baharu sehingga peranan setiap daftar menjadi automatik.

Kelas percubaan berbayar satu jam pada kadar guru yang disahkan, bermula RM80.

Tuisyen diatur bersama ibu bapa atau penjaga. Hantar halaman ini kepada mereka melalui WhatsApp supaya mereka boleh bertanya bagi pihak anda.

Ibu bapa: tanya di sini

  • 9,000+ pelajar telah dibantu melalui perkhidmatan kami
  • 9+ tahun membantu pelajar IGCSE