Hari ini dosen saya menyebutkan alasan mengapa sistem pesawat diprogram dalam bahasa assembly adalah karena program yang ditulis kurang memiliki kesalahan. Apakah pernyataan ini benar? Karena ketika dia bertanya tentang pendapat kami, saya mengatakan perakitan dapat membuat program yang lebih cepat sehingga merupakan bahasa yang baik untuk program sistem pesawat berorientasi waktu nyata. Saya mencari di sekitar Google tetapi sepertinya tidak dapat menemukan artikel yang mengklarifikasi pernyataan dosen saya.
9
Jawaban:
Pernyataan dosen Anda terbukti salah. The Joint Strike Fighter kode kontrol ditulis dalam C ++. 777 dari Boeing menggunakan 99% + ADA . JPL kebanyakan menggunakan C untuk menggerakkan pesawat ruang angkasa.
Saya yakin ada lebih banyak contoh tetapi saya curiga banyak yang dimiliki atau diklasifikasikan.
Berikut ini adalah makalah yang masuk ke beberapa detail tentang masalah pengujian perangkat lunak avionik pada tingkat yang lebih umum.
sumber
Saya bekerja pada OBOGS, yang merupakan komponen yang terhubung ke berbagai pesawat. Kami biasanya menggunakan C untuk perangkat yang terbang, tetapi melihat melalui file historis, ada beberapa proyek perakitan di sana.
Ini fashion, jujur. Bahasa naik dan turun. Alasan orang menggunakan satu atau yang lain bervariasi di semua tempat dan sebagian besar subjektif. Saya merasa sangat masuk akal bahwa seseorang pada titik tertentu berpendapat bahwa perakitan adalah pilihan yang tepat untuk suatu proyek di suatu tempat sepenuhnya karena itu akan memiliki lebih sedikit kesalahan daripada dalam bahasa lain. Dan dia mungkin benar, tapi itu karena orang itu tidak tahu bagaimana cara membuat kode dalam C. Sejauh ini bahasa terbaik untuk pekerjaan itu adalah yang Anda tahu. (Dan bahasa terbaik untuk pertumbuhan pribadi Anda adalah bahasa yang tidak Anda miliki.)
Anda dapat secara objektif mengatakan bahwa perakitan lebih dekat dengan perangkat keras, kurang abstrak, lebih langsung, dengan lebih banyak instruksi ke hal yang sama dalam bahasa lain. Anda bahkan dapat mengatakan bahwa ada kemungkinan bahwa perakitan dapat ditulis untuk mengurangi biaya overhead dan merokok cepat. Jika Anda tahu apa yang Anda lakukan. Tetapi untuk rawan kesalahan, kecepatan perkembangan, keterbacaan, dan kemampuan untuk menyembuhkan kanker? Semua itu tergantung pada kemampuan programmer dan apa yang telah mereka kerjakan selama 20 tahun terakhir. Pengukuran proyek-proyek dengan bahasa apa yang memiliki jumlah bug X adalah tunduk pada faktor sosiologis, sebagian besar membuat mereka metrik tidak berharga. Tidak, itu semua hanya mode.
Senang mengetahui kode Anda, jadi saya akan mengatakan bahwa penting untuk mempelajari perakitan. Kalau hanya sedikit. Tapi saya tidak akan menulis avionik di dalamnya.
sumber