Fortran dibangunkan oleh syarikat itu. Bahasa pengaturcaraan peringkat tinggi pertama

Bahasa pengaturcaraan Fortran digunakan terutamanya untuk pengkomputeran saintifik. Dicipta pada tahun 1954, ia bahasa tertua pengaturcaraan peringkat tinggi, diikuti oleh Lisp (1958), Algol (1958) dan COBOL (1959). Bilangan perpustakaan saintifik yang ditulis dalam Fortran dan penciptaan penterjemah-penyusun khas membolehkan bahasa itu digunakan hari ini. Di samping itu, berbilang kalkulator telah dicipta untuk pengvektoran, coprocessors, paralelisme, yang menyelangi bahasa ini untuk digunakan dalam pengeluaran industri dunia moden.

John Backus, seorang jurutera radio IBM, menerbitkan kertas kerja pada tahun 1954 bertajuk "Laporan Awal", "Spesifikasi untuk Sistem TRANslating Transmula Matmal IBM", yang menimbulkan istilah FORTRAN. Kemudian ia mengambil masa dua tahun lagi usaha oleh seluruh pasukan, yang dipimpinnya, untuk menulis pengkompil pertama untuk bahasa pengaturcaraan Fortran (25,000 baris untuk IBM 704).

Nama bahasa itu pada asalnya ditulis dalam huruf besar FORTRAN dan digunakan untuk merujuk kepada versi bahasa sehingga Fortran 77, berbanding dengan versi percuma sintaks bermula dari Fortran 90. Dalam standard Fortran 77 huruf kecil bukan sebahagian daripada bahasa, tetapi kebanyakan penyusun menyokongnya sebagai tambahan kepada standard.

Hari ini, bahasa pengaturcaraan Fortran adalah bahasa pengaturcaraan yang dominan digunakan dalam aplikasi kejuruteraan. Oleh itu, adalah penting bahawa jurutera siswazah boleh membaca dan mengubah suai kod Fortran. Dari semasa ke semasa, apa yang dipanggil pakar meramalkan bahawa bahasa itu akan kehilangan popularitinya dan tidak lama lagi akan berhenti digunakan sama sekali.

Ramalan ini selalu gagal. Fortran adalah yang paling stabil bahasa komputer pengaturcaraan dalam sejarah. Salah satu sebab utama mengapa bahasa pengaturcaraan Fortran telah bertahan dan akan bertahan adalah inersia perisian. Selepas syarikat itu telah membelanjakan banyak sumber dan mungkin berjuta-juta dolar perisian, tidak mungkin dia akan menterjemah perisian itu ke dalam bahasa lain.

Kelebihan utama Fortran ialah ia diseragamkan oleh badan antarabangsa ANSI dan ISO. Oleh itu, jika program ditulis dalam ANSI, maka ia akan dijalankan pada mana-mana komputer dengan pengkompil Fortran 77. Ini maklumat penting. Oleh itu, program bahasa pengaturcaraan berorientasikan objek Fortran wujud dalam berbeza peranti perisian.

Peringkat mencipta platform bahasa:

  1. Pada tahun 1954-1957, penyusun pertama telah dibangunkan dari awal. Pada zaman itu tidak ada "bahasa peringkat tinggi" (=HLL), kebanyakannya sistem operasi adalah mudah, dan memorinya kecil, kira-kira 16 Kb. Pengkompil pertama dijalankan pada IBM 704. Bahasa HLL ini jauh lebih cekap daripada pengaturcaraan pemasangan dan sangat popular pada zamannya.
  2. FORTRAN II diterbitkan pada tahun 1958. Pada tahun yang sama, FORTRAN III telah dibangunkan tetapi tidak pernah dikeluarkan kepada pengeluaran yang meluas.
  3. Pada tahun 1961, FORTRAN IV telah diwujudkan. Ia mengandungi penambahbaikan seperti pelaksanaan kenyataan COMMON dan EQUIVALENCE.
  4. Pada tahun 1962, sebuah jawatankuasa ASA mula membangunkan standard untuk bahasa pengaturcaraan berorientasikan objek Fortran. Ini membolehkan penjual menggunakannya dalam setiap komputer baharu. Dan fakta ini menjadikannya lebih popular HLL, bahasa itu tersedia dalam sistem Apple dan TRS80.
  5. Pada tahun 1967, FORTRAN 66, piawaian HLL pertama di dunia, telah dikeluarkan. Penerbitan piawaian bermakna bahawa bahasa itu menjadi lebih meluas daripada yang lain. Menjelang pertengahan 1970-an, hampir setiap komputer, mini, atau kerangka utama telah dilengkapi bahasa standard FORTRAN 66. Bahasa yang digunakan pernyataan-jika, pernyataan goto, dan program spagethi. Jenis pengaturcaraan berstruktur ini menjadi popular pada tahun 60-an dan 70-an.
  6. "Fortran" wujud pada kad tebuk khususnya, dengan sistem FMS, mengoptimumkan susun atur sumbernya sehingga Fortran 90 memperkenalkan sintaks "percuma". Di dalamnya, kod tatasusunan Fortran bermula dari lajur ke-7 dan tidak boleh melebihi 72 ribu aksara.

Perlu juga diperhatikan bahawa sebelum Fortran 90, ruang tidak mempunyai makna antara lajur ke-7 dan ke-72. Oleh itu kitaran "DO I = 1.5" juga boleh ditulis "DOI = 1.5". Sebaliknya, "DO I = 1.5" adalah bersamaan dengan "DOI = 1.5".

Banyak kod industri telah ditulis di Nastran, NAG dan perpustakaan IMSL-Fortran. Keserasian versi baharu dengan versi terdahulu adalah penting. Atas sebab ini, Fortran 90 serasi sepenuhnya dengan Fortran 77. Walau bagaimanapun, versi standard berikutnya telah pun memperkenalkan ketidakserasian.

Bahasa yang lebih maju Fortran 90 dan Fortran 95 tidak lama lagi menyusul, dikemas kini kepada standard Fortran-2003 semasa. Memandangkan penyusun moden berfungsi tanpa had dalam semua semasa Versi Windows malah menyokong pemproses 64-bit. Sementara itu, pengeluar telah mengiktiraf arah aliran masa dan menawarkan penyusun untuk Linux dalam bentuk bahasa pengaturcaraan berorientasikan objek Actor Fortran.

Prasyarat untuk menggunakan bahasa pengaturcaraan

Perlu difahami bahawa Fortran masih merupakan bahasa pengaturcaraan yang digunakan secara meluas dan digunakan terutamanya dalam bidang penemuan. Aplikasi klasik, contohnya dalam fizik atau kejuruteraan, di mana luas dan kompleks pengiraan matematik. Mereka sangat berguna kerana perpustakaan matematik yang luas yang wujud untuk penyusun yang berbeza. Kesimpulannya, kita boleh katakan hari ini bahasa Fortran masih digunakan untuk beberapa sebab:

  • Ketersediaan banyak perpustakaan berfungsi yang dibangunkan selama bertahun-tahun.
  • Ketersediaan perisian dalam Fortran, yang memerlukan sumber yang sangat penting untuk pembangunan, apabila menukar kepada bahasa lain dianggap terlalu mahal.
  • Ketersediaan penyusun berkuasa dengan terbina dalam Fungsi Fortran, yang menghasilkan sangat cepat fail boleh laku.
  • Bahasa ini lebih mudah diakses oleh pencipta yang tidak mempunyai kursus komputer khusus.

Banyak program saintifik kini ditulis dalam C dan C++, yang mana pengkompil tersedia pada kebanyakan mesin. Bahasa yang disusun lain kadangkala digunakan untuk pengkomputeran saintifik, dan terutamanya untuk program seperti Scilab atau Matlab. Yang terakhir ini juga termasuk perpustakaan BLAS dan LAPACK, yang dibangunkan dalam pengaturcaraan Fortran. Matlab pada asalnya adalah program Fortran yang diedarkan kepada universiti dan pusat penyelidikan.

Walaupun Tom Lahey kini merupakan "satu-satunya" penyusun am, Lahey Computer Systems terus digunakan oleh ramai pengaturcara. Lahey telah bekerja dengan Fujitsu selama beberapa tahun sekarang, dengan Lahey menumpukan pada penghurai Fortran dan Fujitsu pada penjana kod. Suite Pengkompil untuk Windows semasa dipanggil Lahey Fujitsu Fortran 95 (LF95) dan tersedia dalam versi berbeza, sebahagian daripadanya turut disepadukan dengan Studio Visual.BERSIH 2003.

Terdapat juga versi murah LF95 Express tanpa IDE sendiri. Versi semasa ialah 7.1. pada Linux dipanggil oleh pengkompil Lahey/Fujitsu Fortran 95 v6.2 untuk Linux dan tersedia dalam dua versi berbeza. Sebagai contoh, Versi pro termasuk keserasian OpenMP v2.0, enjin grafik ringkas Winteracter Starter Kit, perpustakaan matematik Dan perpustakaan ilmiah Rutin Fujitsu 2.

Pengeluar lain ialah Absoft. Penyusun dan C++ bukan sahaja wujud untuk Windows dan Linux, tetapi juga untuk OS X pada Macintosh. Penyusun ini menarik minat pembangun yang memerlukan atau ingin menyokong ketiga-tiga platform. Malangnya, Absoft membezakan antara versi 32-bit dan 64-bit untuk Linux, pada masa ini menggunakan versi 10.0 Fortran 95 untuk Linux 64-bit.

Agak baru dalam pasaran ialah Suite EKOPath Compiler. Ini terdiri daripada penyusun C++ dan persekitaran pembangunan Fortran untuk Linux, yang juga tersedia secara berasingan dan ditujukan terutamanya kepada pengguna AMD 64-bit. Ia juga berjalan pada Intel EM64T. Microsoft juga pernah cuba mencari "pasaran murah" untuk Fortran dan memperkenalkan Microsoft Powerstation ke pasaran.

Pasaran mungkin terlalu kecil untuk gergasi perisian itu, tetapi Digital mengambil alih beberapa kod pada tahun 1997 dan menggunakan pengalamannya dengan penyusun Digital Unix dan OpenVMS. Ini adalah kelahiran Fortran Visual Digital yang masih sangat berjaya. Pada satu ketika Digital kemudian berpindah ke Compaq, pengkompil telah dibangunkan untuk versi terkini Compaq Visual Fortran (CVF) v6.6.

Sebagai tambahan kepada platform 32-bit "biasa", terdapat pelbagai penyusun 64-bit, contohnya untuk Intel Itanium dan Intel EM64T. Walaupun mereka tidak "mendesak" untuk skop bekalan, mereka tersedia untuk muat turun percuma melalui sistem web Sokongan Intel Perdana.

Selepas pendaftaran sekali, agak menyusahkan, anda boleh menggunakannya selama setahun, dengan kemas kini baharu setiap beberapa minggu. Malah versi yang lebih lama akan kekal tersedia.

Program Fortran ialah urutan baris teks. Teks mesti mengikut sintaks tertentu. Contohnya: bulatan berjejari r, luas c.

Program ini membaca jejari sebenar dan menentukan luas bulatan dengan jejari r:

"Jejari r:"baca (*, *) r;

luas = 3.14159 * r * r;

tulis (*, *) "Kawasan =";

Baris yang bermula dengan "C" adalah ulasan dan tidak mempunyai tujuan selain untuk menjadikan program lebih mudah dibaca oleh orang ramai. Pada mulanya, semua program Fortran telah ditulis huruf besar. Kebanyakan pengaturcara kini menulis huruf kecil kerana ia lebih mudah dibaca.

Program Fortran biasanya terdiri daripada program utama atau pemacu dan beberapa subrutin, prosedur atau subrutin. Struktur program utama:

  • nama program;
  • pengisytiharan;
  • kenyataan;
  • berhenti;
  • tamat.

Italic tidak boleh dianggap sebagai teks literal, sebaliknya sebagai Deskripsi umum. Pernyataan berhenti adalah pilihan dan mungkin kelihatan tidak perlu kerana program akan berhenti apabila ia sampai ke penghujungnya, tetapi adalah disyorkan untuk sentiasa menamatkan program dengan pernyataan berhenti untuk menekankan bahawa aliran pelaksanaan sedang ditamatkan.

Peraturan kedudukan lajur

Fortran 77 bukan bahasa format percuma, tetapi mempunyai set peraturan yang sangat ketat untuk pemformatan kod sumber. Paling peraturan penting ialah peraturan untuk susunan lajur:

  • Kol. 1: Kosong atau "c" atau "*" untuk ulasan.
  • Kol. 2-5: tanda pengendali.
  • Kol. 6: kesinambungan baris sebelumnya.
  • Kol. 7-72: kenyataan.
  • Kol. 73- 80: Nombor urutan.

Baris Fortran yang bermula dengan huruf "c" atau asterisk dalam lajur pertama ialah ulasan. Komen boleh muncul di mana-mana dalam program. Ditulis dengan baik, mereka penting untuk kebolehbacaan program. Kod Fortran Komersial selalunya mengandungi kira-kira 50% ulasan. Anda juga mungkin menghadapi program yang menggunakan Tanda seru(!). Ini sangat tidak standard dalam Fortran 77, tetapi dibenarkan dalam Fortran 90.

Tanda seru boleh muncul di mana-mana pada baris. Kadangkala pernyataan tidak sesuai pada satu baris, maka anda boleh memecahkan pernyataan itu kepada dua atau lebih baris dan menggunakan tanda sambungan dalam kedudukan.

  1. C23456789 - Ini menunjukkan kedudukan lajur.
  2. "C" - pernyataan seterusnya melalui dua kawasan garis fizikal.
  3. Luas = 3.14159265358979+ * r * r.

Ruang kosong diabaikan bermula dengan Fortran 77. Oleh itu, jika anda mengalih keluar semua ruang dalam Fortran 77, program ini masih betul dari segi sintaksis, walaupun ia hampir tidak boleh dibaca oleh pengendali.

Nama pembolehubah dalam Fortran terdiri daripada 1-6 aksara, dipilih daripada huruf a-z dan nombor 0-9. Aksara pertama mestilah huruf. Fortran 90 membenarkan nama berubah dengan panjang sewenang-wenangnya. Fortran 77 tidak membezakan antara atas dan huruf kecil, sebenarnya ia menganggap bahawa semua input adalah huruf besar. Walau bagaimanapun, hampir semua penyusun F 77 akan menerima huruf kecil. Setiap pembolehubah mesti ditakrifkan dalam pengisytiharan. Ini menetapkan jenis pembolehubah. Senarai pembolehubah yang paling biasa ialah:

  • integer;
  • sebenar;
  • ketepatan berganda;
  • kompleks;
  • logik;
  • watak.

Senarai pembolehubah mesti terdiri daripada nama yang dipisahkan dengan koma. Setiap pembolehubah mesti diisytiharkan tepat sekali. Jika pembolehubah tidak diisytiharkan, F 77 menggunakan set peraturan tersirat untuk menetapkan jenis. Ini bermakna semua pembolehubah yang bermula dengan huruf "dalam" adalah integer, dan semua yang lain adalah nombor nyata. Banyak atur cara F 77 lama menggunakan peraturan tersirat ini, tetapi pengaturcara tidak seharusnya berbuat demikian kerana kemungkinan ralat program meningkat secara mendadak jika ia mengisytiharkan pembolehubah secara tidak konsisten.

Fortran 77 hanya mempunyai satu jenis untuk pembolehubah integer. Integer biasanya disimpan sebagai pembolehubah 32-bit (4 bait). Oleh itu, semua pembolehubah integer mesti mengambil nilai dalam julat [-m, m], dengan m adalah lebih kurang 2 * 10 9.

F 77 mempunyai dua jenis yang berbeza untuk pembolehubah titik terapung, dipanggil ketepatan berganda sebenar. Beberapa pengiraan berangka memerlukan sangat ketepatan tinggi, dan ketepatan berganda harus digunakan. Biasanya sebenar ialah pembolehubah 4 bait dan ketepatan berganda ialah 8 bait, tetapi ini bergantung pada mesin.

Versi bukan standard Fortran menggunakan sintaks*8 sebenar untuk merujuk kepada pembolehubah titik terapung 8-bait. Sesetengah pemalar muncul berkali-kali dalam atur cara. Oleh itu, adalah dinasihatkan untuk menentukannya sekali sahaja, pada permulaan program. Operator parameter digunakan untuk ini. Ia juga menjadikan program lebih mudah dibaca. Sebagai contoh, program untuk kawasan bulatan harus ditulis seperti ini.

Sintaks operator parameter (nama = pemalar, ..., nama = pemalar). Peraturan untuk pengendali parameter:

  1. "pembolehubah" yang ditakrifkan dalam pernyataan parameter bukanlah pembolehubah, tetapi pemalar yang nilainya tidak boleh berubah.
  2. "Pembolehubah" boleh memaparkan paling banyak satu pernyataan parameter.
  3. Parameter operator mesti datang sebelum operator boleh laku pertama

Beberapa sebab yang baik untuk menggunakan parameter - membantu mengurangkan kesilapan menaip, mudah untuk menukar pemalar yang muncul berkali-kali dalam program.

Ungkapan Boolean hanya boleh mempunyai nilai.BENAR. atau.PALSU. dan boleh dibentuk dengan perbandingan menggunakan pengendali hubungan.

Anda tidak boleh menggunakan aksara seperti "<» или «=» для сравнения в F 77, но можно использовать правильную двухбуквенную аббревиатуру, заключенную точками. Однако такие символы разрешены в Fortran 90.

Ungkapan logik boleh digabungkan dengan operator logik "DAN", "ATAU", "TIDAK", yang mempunyai makna yang jelas. Nilai kebenaran boleh disimpan dalam pembolehubah boolean. Tugasan adalah serupa dengan tugasan aritmetik.

Contoh: logik a, ba = .BENAR.b = a .DAN. 3.LT. 5/2

Susunan keutamaan adalah sangat penting. Peraturannya ialah ungkapan aritmetik dinilai terlebih dahulu, kemudian pengendali hubungan, dan akhirnya pengendali logik. Oleh itu, b akan diberikan .SALAH. Dalam contoh di atas, pembolehubah boolean jarang digunakan dalam Fortran, tetapi ia sering digunakan dalam pernyataan bersyarat seperti pernyataan "jika".

Tetap dan tujuan

Bentuk ungkapan yang paling mudah ialah pemalar. Terdapat 6 jenis pemalar yang sepadan dengan 6 jenis data. Berikut ialah beberapa pemalar integer: 10-10032767+15

Pemalar sebenar: 1.0-0.252.0E63.333E-1.

E-notasi bermaksud untuk mendarab pemalar dengan 10 dinaikkan kepada kuasa berikutan "E". Oleh itu, 2.0E6 ialah dua juta, dan 3.333E-1 adalah kira-kira satu pertiga. Untuk pemalar yang lebih besar daripada yang terbesar sebenarnya dibenarkan, atau yang memerlukan ketepatan tinggi, ketepatan dua kali ganda harus digunakan. Notasi adalah sama seperti pemalar sebenar, kecuali "E" digantikan dengan "D".

Contoh:2.0D-11D99.

Di sini 2.0D-1 ialah ketepatan berganda dengan satu perlima, manakala 1D99 adalah satu diikuti oleh 99 sifar.

Jenis seterusnya ialah pemalar kompleks. Mereka dilambangkan dengan sepasang pemalar (integer atau nyata), dipisahkan dengan koma dan disertakan dalam kurungan.

Contohnya ialah: (2, -3)(1,9,9E-1). Nombor pertama menandakan bahagian sebenar, dan yang kedua bahagian khayalan.

Jenis kelima ialah pemalar logik. Mereka hanya boleh mempunyai satu daripada dua makna:

Sila ambil perhatian bahawa titik yang mengandungi huruf perlu ditulis.

Jenis terakhir ialah pemalar aksara. Ia paling kerap digunakan sebagai susunan aksara yang dipanggil rentetan. Ia terdiri daripada urutan aksara sewenang-wenangnya yang disertakan dalam apostrof (petikan tunggal):

"Apa-apa sahaja!"

"Hari yang bagus"

Pemalar rentetan dan aksara adalah peka huruf besar-besaran. Masalahnya timbul jika anda ingin mempunyai apostrof sebenar dalam baris itu sendiri. Dalam kes ini, anda perlu menggandakan tanda kutip: "Ia" "hari yang baik", yang bermaksud "Hari yang indah"

Pernyataan bersyarat adalah komponen penting dalam mana-mana bahasa pengaturcaraan. Pernyataan yang paling biasa dalam Fortran ialah pernyataan "jika", yang sebenarnya mempunyai beberapa bentuk.

Yang paling mudah ialah ungkapan logik "jika" dalam keterangan Fortran: jika (ungkapan logik) pernyataan boleh laku.

Ini harus ditulis pada satu baris, contohnya apabila menentukan nilai mutlak x:

jika (x .LT. 0) x = -x

Jika lebih daripada satu pernyataan hendak dilaksanakan dalam "jika", maka sintaks berikut harus digunakan: if (ungkapan logik) thenstatementsendif.

Aliran pelaksanaan dari atas ke bawah. Ungkapan bersyarat dinilai secara berurutan sehingga nilai sebenar ditemui. Kod yang sesuai kemudiannya dilaksanakan dan kawalan bergerak ke pernyataan seterusnya selepas akhir "jika".

Jika pernyataan boleh bersarang berbilang peringkat. Untuk memastikan kebolehbacaan, adalah penting untuk menggunakan lekukan yang betul. Berikut ialah contoh:

jika (x .GT. 0) maka jika (x .GE. y) kemudian tulis(*,*) "x ialah positif dan x >= y"tulis lain(*,*) "x ialah positif tetapi x< y"endifelseif (x .LT. 0) thenwrite(*,*) "x is negative"elsewrite(*,*) "x is zero"endif

Pengaturcara harus mengelak daripada meletakkan banyak peringkat pernyataan "jika" kerana ia akan menjadi sukar untuk diikuti.

Anda boleh menggunakan mana-mana stesen kerja Unix dengan pengkompil F 77. Pengaturcara yang berpengalaman mengesyorkan menggunakan sama ada Sun atau Dec.

Program Fortran terdiri daripada teks biasa yang mengikut peraturan sintaks tertentu. Ini dipanggil kod sumber. Pengaturcara menggunakan editor untuk menulis kod sumber. Editor yang paling biasa di Unix ialah emacs dan vi, tetapi ia boleh menjadi agak rumit untuk pengguna pemula. Anda boleh menggunakan editor yang lebih mudah, seperti xedit, yang dijalankan di bawah tetingkap X.

Sebaik sahaja atur cara Fortran ditulis, ia disimpan dalam fail dengan sambungan ".f" atau ".for" dan atur cara itu ditukar kepada bentuk yang boleh dibaca mesin. Ini dilakukan menggunakan program khas yang dipanggil pengkompil. Pengkompil Fortran 77 biasanya dipanggil f77. Output kompilasi diberi nama yang agak samar "a.out" secara lalai, tetapi anda boleh memilih nama lain jika perlu. Untuk menjalankan program, hanya masukkan nama fail boleh laku, sebagai contoh, "a.out". Pengkompil menterjemahkan kod sumber kepada kod objek, dan pemaut atau pemuat menterjemahkannya ke dalam fail boleh laku. Seperti yang anda lihat, prosedur ini sama sekali tidak rumit dan boleh diakses oleh mana-mana pengguna.

Simulasi adalah salah satu kaedah pembuatan yang paling biasa digunakan dan sistem lain yang terdapat di kilang moden. Kebanyakan model simulasi dibina menggunakan bahasa pengaturcaraan berorientasikan objek Actor Fortran, atau pakej perisian simulasi yang ditulis dalam bahasa tradisional. Alat ini mempunyai batasannya. Teknologi berorientasikan objek telah menyaksikan peningkatan penggunaan dalam banyak bidang dan menjanjikan pendekatan yang lebih fleksibel dan cekap untuk memodelkan sistem perniagaan.

Pengaturcaraan Simula Fortran dibandingkan dengan bahasa pengaturcaraan saintifik konvensional yang dipanggil FORTRAN. Model simulasi tentera biasa diprogramkan dalam kedua-dua SIMULA dan FORTRAN. Program SIMULA adalah 24% lebih pendek daripada versi FORTRAN.

Versi SIMULA juga lebih ringkas dan memberikan gambaran yang lebih baik tentang model yang disimulasikan. Sebaliknya, masa pelaksanaan untuk pengeluaran adalah 64% lebih cepat dengan bahasa pengaturcaraan berorientasikan objek Simula Fortran. Menimbang kebaikan dan keburukan menunjukkan bahawa SIMULA akan menjadi perisian yang semakin menguntungkan, dengan kos kakitangan yang lebih tinggi dan kos komputer yang lebih rendah.

CUDA menunjukkan cara pembangun aplikasi berprestasi tinggi boleh memanfaatkan kuasa GPU menggunakan Fortran, bahasa biasa untuk pengkomputeran saintifik dan ujian prestasi superkomputer. Penulis tidak menganggap pengalaman pengkomputeran selari sebelumnya dan hanya meliputi asas serta amalan terbaik. Kecekapan pengkomputeran GPU menggunakan CUDA Fortran didayakan oleh seni bina GPU sasaran.

CUDA Fortran untuk Saintis dan Jurutera akan mengenal pasti bahagian kod yang intensif secara pengiraan dan mengubah suai kod untuk pengurusan data, selari dan pengoptimuman prestasi. Semua ini dilakukan dalam Fortran, tanpa perlu menulis semula program ke dalam bahasa lain. Setiap konsep digambarkan dengan contoh sebenar supaya anda boleh menilai dengan segera prestasi kod.

Mungkin suatu hari nanti syarikat global itu akan "mengglobalisasikan akhirnya" dan memutuskan bahawa Fortran tidak lagi diperlukan, tetapi bukan sekarang. Terima kasih kepada keupayaan semasa Fortran moden, ramai pengaturcara dan saintis melihatnya sebagai masa depan. Di samping itu, terdapat cukup pengeluar di dunia yang hidup dengan membangunkan penyusun moden dan menghasilkan wang yang baik daripada proses ini.

Sejarah penciptaan bahasa pengaturcaraan Fortran. Piawaian sedia ada. Versi bahasa pengaturcaraan Fortran.

Pengaturcara menulis program untuk komputer pertama dalam bahasa arahan mesin. Ini adalah proses yang sangat intensif buruh dan panjang. Sebilangan besar masa berlalu antara permulaan menyusun atur cara dan permulaan penggunaannya. Masalah ini hanya boleh diselesaikan dengan mencipta alat pengaturcaraan automatik.
"Alat" pertama yang menyelamatkan tenaga pengaturcara ialah subrutin. Pada Ogos 1944, subrutin pertama untuk mengira sinx telah ditulis untuk mesin relay Mark I di bawah pimpinan Grace Hopper (seorang pengaturcara wanita dan pegawai tentera laut dalam Tentera Laut AS).
Grace Hopper bukan satu-satunya yang mengambil berat tentang masalah memudahkan kerja pengaturcara. Pada tahun 1949, John Mauchly (salah seorang pencipta komputer ENIAC) membangunkan sistem SHORT Code, yang boleh dianggap sebagai pendahulu bahasa pengaturcaraan peringkat tinggi. Pengaturcara menulis masalah yang akan diselesaikan dalam bentuk formula matematik dan menukar formula kepada kod dua huruf. Selepas itu, program khas menterjemah kod ini ke dalam kod mesin binari. Oleh itu, J. Mauchly mengembangkan salah satu jurubahasa primitif pertama. Dan pada tahun 1951, G. Hopper mencipta penyusun pertama A-0. Dia adalah orang pertama yang memperkenalkan istilah ini.

Bahasa peringkat tinggi pertama: Cobol dan Fortran
Pada 50-an abad yang lalu, kumpulan yang diketuai oleh G. Hopper mula membangunkan bahasa baru dan penyusun B-0. Baru bahasa akan membenarkan pengaturcaraan dalam bahasa yang hampir dengan bahasa Inggeris biasa. Pembangun bahasa memilih kira-kira 30 perkataan Inggeris, untuk pengiktirafan yang G. Hopper menghasilkan kaedah yang dipelihara dalam pengendali bahasa pengaturcaraan masa hadapan: setiap perkataan mengandungi gabungan unik huruf pertama dan ketiga. Ini membolehkan pengkompil mengabaikan semua huruf lain dalam perkataan apabila menjana kod mesin untuk program.
G. Hopper mengaitkan keperluan untuk kemunculan sistem sedemikian, bahasa yang hampir dengan bahasa pertuturan, dengan hakikat bahawa skop aplikasi komputer akan berkembang, dan oleh itu bilangan pengguna juga akan berkembang. Menurut G. Hopper, percubaan harus ditinggalkan untuk "mengubah semuanya menjadi ahli matematik".
Pada tahun 1958, sistem B-0 dipanggil FLOW-MATIC dan tertumpu pada pemprosesan data komersial. Pada tahun 1959, bahasa COBOL (Common Business Oriented Language) yang bebas mesin telah dibangunkan bahasa pengaturcaraan tahap tinggi untuk penterjemah yang sepadan daripada bahasa ini. G. Hopper sekali lagi bertindak sebagai perunding apabila mencipta bahasa COBOL.
Pada tahun 1954, satu mesej tentang penciptaan bahasa FORTRAN (FORmula TRANslation) (Fortran) telah diterbitkan. Tempat kelahiran bahasa itu ialah ibu pejabat IBM di New York. Salah satu pemaju utama ialah

John Backus. Beliau juga menjadi pengarang NFB (Backus Normal Form), yang digunakan untuk menerangkan sintaks banyak bahasa pengaturcaraan. Dalam tempoh yang sama, bahasa ALGOL menjadi popular di negara-negara Eropah dan USSR. Seperti FORTRAN, ia berorientasikan kepada masalah matematik. Ia melaksanakan teknologi pengaturcaraan termaju pada masa itu, pengaturcaraan berstruktur.

Fortran di USSR.

Fortran muncul di USSR lebih lambat daripada di Barat, kerana pada mulanya Algol dianggap sebagai bahasa yang lebih menjanjikan. Komunikasi antara ahli fizik Soviet dan rakan-rakan mereka di CERN memainkan peranan utama dalam pengenalan Fortran, di mana pada tahun 1960-an hampir semua pengiraan dijalankan menggunakan program Fortran.

Pengkompil Soviet Fortran pertama dicipta pada tahun 1967 untuk mesin Minsk-2, tetapi ia tidak mendapat banyak populariti. Pengenalan meluas Fortran bermula selepas penciptaan pada tahun 1968 penyusun FORTRAN-DUBNA untuk mesin BESM-6. Komputer EC, yang muncul pada tahun 1972, pada mulanya telah mempunyai penterjemah Fortran ("dipinjam" daripada IBM/360 bersama-sama dengan perisian lain).

Piawaian

Bahasa ini telah diseragamkan dalam ANSI dan ISO

Piawaian telah dibangunkan - Fortran 66, Fortran 77, Fortran 90, Fortran 95, Fortran 2003 dan Fortran 2008.

Penyeragaman bahasa pengaturcaraan mewujudkan prasyarat untuk meningkatkan kemudahalihan perisian untuk komputer dari mana-mana seni bina. Penyeragaman Fortran adalah salah satu sebab untuk panjang umur bahasa, kerana ia adalah terima kasih kepada penyeragaman bahawa kemungkinan menggunakan dana besar program aplikasi yang telah dicipta selama beberapa dekad kewujudan bahasa telah dipastikan.

Fortran ialah bahasa yang sangat standard, itulah sebabnya ia mudah dibawa ke pelbagai platform. Terdapat beberapa standard bahasa antarabangsa:

FORTRAN IV(kemudian digunakan sebagai asas FORTRAN 66 (1966);

FORTRAN 77(1978) banyak penambahbaikan: jenis data rentetan dan fungsi untuk memprosesnya, penyataan blok IF, ELSE IF, ELSE, END IF, INCLUDE statement, dsb.

Fortran 90(1991) telah menyemak semula standard bahasa dengan ketara. Format percuma untuk menulis kod telah diperkenalkan. Perihalan tambahan telah muncul: IMPLIIT TIADA, JENIS, BOLEH DIPERUNTUKAN, PENUNJUK, SASARAN, SENARAI NAMA; struktur kawalan DO ... TAMAT LAKUKAN, LAKUKAN SEMASA,KITAR, PILIH KES, DI MANA; bekerja dengan ingatan dinamik (PERUNTUKKAN, PENYAMPAIAN, NULLIFY); komponen perisian MODUL, SWASTA, AWAM, MENGANDUNGI, ANTARA MUKA, PENGGUNAAN, NIAT. Fungsi terbina dalam baharu telah muncul, pertama sekali, elemen OOP telah muncul dalam bahasa untuk bekerja dengan tatasusunan

Fortran 95(1997) - pembetulan standard sebelumnya Fortran 2003(2004) Pembangunan lanjut sokongan OOP dalam bahasa. Interaksi dengan sistem pengendalian Pengendali dan konstruk FORALL telah diperkenalkan, membolehkan lebih banyak fleksibiliti daripada operator dan konstruk WHERE untuk menetapkan tatasusunan dan menggantikan gelung yang menyusahkan. FORALL membolehkan anda menggantikan mana-mana penugasan bahagian atau klausa WHERE, khususnya, ia menyediakan akses kepada pepenjuru matriks. Pengendali ini dianggap menjanjikan dalam pengkomputeran selari, memudahkan penyejajaran lebih cekap daripada gelung.

Fortran 2003(2004) Pembangunan lanjut sokongan OOP dalam bahasa. Interaksi dengan sistem pengendalian. Ciri-ciri berikut juga telah ditambah: 1. Input/output data tak segerak 2. Cara interaksi dengan bahasa. 3. Penambahbaikan penempatan data dinamik. Fortran 2008(2010) Piawaian ini menerima sokongan melalui bahasa pengkomputeran selari (Co-Arrays Fortran). Ia juga dirancang untuk meningkatkan dimensi maksimum tatasusunan kepada 15, menambah fungsi matematik khas terbina dalam, dsb.

Versi bahasa pengaturcaraan Fortran

Pengaturcara yang membangunkan program secara eksklusif dalam bahasa himpunan menyatakan keraguan yang serius tentang kemungkinan bahasa peringkat tinggi berprestasi tinggi, jadi kriteria utama semasa membangunkan penyusun Fortran ialah kecekapan kod boleh laku. Sebilangan besar perpustakaan telah dicipta untuk bahasa ini, daripada kompleks statistik hingga pakej kawalan satelit, jadi Fortran terus digunakan secara aktif. Terdapat versi standard Fortran, WF (Fortran Prestasi Tinggi), untuk superkomputer selari dengan berbilang pemproses.

Cobol (Cobol). Ia adalah bahasa yang disusun untuk digunakan dalam masalah ekonomi dan perniagaan, dibangunkan pada awal 60-an. Ia dicirikan oleh "verbosity" yang hebat - kenyataannya kadangkala kelihatan seperti frasa bahasa Inggeris biasa. Cobol menyediakan alat yang sangat berkuasa untuk bekerja dengan sejumlah besar data yang disimpan pada pelbagai media luaran. Banyak aplikasi telah dibuat dalam bahasa ini, yang masih aktif digunakan hari ini.

Algol (Algol). Bahasa yang disusun pada tahun 1960. Ia bertujuan untuk menggantikan Fortran, tetapi kerana strukturnya yang lebih kompleks, ia tidak digunakan secara meluas. Pada tahun 1968, versi Algol 68 telah dicipta, yang dalam keupayaannya masih mendahului banyak bahasa pengaturcaraan hari ini, tetapi disebabkan kekurangan komputer yang cukup cekap untuknya, tidak mungkin untuk mencipta penyusun yang baik untuknya dalam a tepat pada masanya.

Pascal. Bahasa Pascal, yang dicipta pada akhir 70-an oleh pengasas banyak idea pengaturcaraan moden, Niklaus Wirth, dalam banyak cara mengingatkan Algol, tetapi ia telah mengetatkan beberapa keperluan untuk struktur program dan mempunyai keupayaan yang membolehkannya berjaya. digunakan semasa membuat projek besar.

asas. Terdapat kedua-dua penyusun dan jurubahasa untuk bahasa ini, dan dari segi populariti ia menduduki tempat pertama di dunia. Ia dicipta pada tahun 60-an sebagai bahasa pendidikan dan sangat mudah dipelajari. Ini adalah salah satu bahasa pengaturcaraan yang menjanjikan.

C (Si). Bahasa ini dicipta di Makmal Bell dan pada mulanya tidak dianggap sebagai bahasa massa. Ia telah dirancang untuk menggantikan bahasa penghimpun agar dapat mencipta program yang sama cekap dan padat, dan pada masa yang sama tidak bergantung pada jenis pemproses tertentu. Pada tahun 70-an, banyak program aplikasi dan sistem serta beberapa sistem pengendalian (Unix) yang terkenal telah ditulis dalam bahasa ini.

Jawa (Jawa, Jawa). Bahasa ini dicipta oleh Sun pada awal 90-an berdasarkan C++. Ia direka untuk memudahkan pembangunan aplikasi berasaskan C++ dengan menghapuskan semua ciri peringkat rendah daripadanya. Tetapi ciri utama bahasa ini ialah penyusunan bukan ke dalam kod mesin, tetapi ke dalam kod bait bebas platform (setiap arahan menduduki satu bait). Bytecode ini boleh dilaksanakan menggunakan penterjemah - Mesin Maya Java, versi yang dicipta hari ini untuk semua platform. Terima kasih kepada ketersediaan banyak mesin Java, program Java boleh menjadi mudah alih bukan sahaja pada tahap teks sumber, tetapi juga pada tahap bytecode binari, jadi bahasa Java hari ini menduduki tempat kedua dalam populariti di dunia selepas BASIC.

Baru-baru ini, sistem pengaturcaraan tertumpu pada penciptaan aplikasi Windows:

· beg plastik Borland Delphi (Delphi) ialah pengganti yang cemerlang kepada keluarga penyusun Borland Pascal, menyediakan alatan pembangunan visual yang berkualiti tinggi dan sangat mudah. Pengkompilnya yang sangat pantas membolehkan anda menyelesaikan hampir semua masalah pengaturcaraan aplikasi dengan cekap dan cepat.

· beg plastik Microsoft Visual Basic - alat yang mudah dan popular untuk mencipta program Windows menggunakan alat visual. Mengandungi alat untuk mencipta gambar rajah Dan pembentangan.

· beg plastik Borland C++ - salah satu alat yang paling biasa untuk membangunkan aplikasi DOS dan Windows.

Pada 2017, bahasa Fortran berusia 60 tahun. Pada masa ini, bahasa telah diperhalusi beberapa kali. Fortran 90, 95, 2003 dan 2008 dianggap versi "moden". Jika pada mulanya ia adalah bahasa pengaturcaraan peringkat tinggi dengan paradigma struktur semata-mata, maka dalam versi kemudian sokongan untuk OOP dan pengaturcaraan selari muncul. Hari ini, Fortran telah dilaksanakan pada kebanyakan platform.

Sebelum kemunculan Fortran, pembangun memprogramkan menggunakan kod mesin dan bahasa pemasangan. Bahasa peringkat tinggi dengan cepat mendapat populariti kerana ia mudah dipelajari dan menjana kod boleh laku yang cekap. Ini menjadikan hidup lebih mudah untuk pengaturcara.

Pada tahun 1950, ketika John Backus berumur 25 tahun, beliau menerima ijazah sarjana dalam bidang matematik dari Columbia University dan mendapat pekerjaan sebagai pengaturcara di IBM. Tidak lama kemudian dia mengetuai pasukan membangunkan penterjemah yang dipanggil "Fast Encoder" untuk komputer IBM-701. Dia kemudian bekerja sebagai sebahagian daripada pasukan untuk mencipta pengganti yang lebih berkuasa kepada 701, IBM-704.

Pada tahun 1953, Backus menghasilkan inisiatif rasionalisasi. Beliau mencadangkan mencipta bahasa dan penyusun untuknya, yang sepatutnya memudahkan pengaturcaraan model IBM-704. Sistem ini membenarkan atur cara untuk ditulis dalam bentuk algebra, dan pengkompil sepatutnya menterjemahkannya secara automatik ke dalam kod mesin.

Dengan cadangan ini, John Backus, seperti yang mereka katakan, berada di tempat yang betul pada masa yang tepat. Setelah memasuki pasaran lewat, IBM menghadapi kesukaran untuk meningkatkan jualan komputernya. Atas sebab ini, dia menyokong penyelidikan sains komputer di Columbia, Harvard dan beberapa universiti lain. Di samping itu, IBM sendiri sedang mencari cara untuk mengurangkan kos pengaturcaraan, dan juga cuba memudahkan kerja dengan komputer untuk menjadikannya lebih menarik, "mesra" untuk pengguna.

Hakikatnya ialah pada masa itu kebanyakan saintis, jurutera dan guru yang bekerja dengan komputer. Komputer digunakan untuk pengiraan saintifik. Walau bagaimanapun, mereka ini mengalami kesukaran yang besar, kerana mereka terpaksa menggunakan kod mesin dan bahasa perhimpunan. Dan ini memerlukan pengetahuan yang cukup mendalam tentang struktur dan operasi komputer itu sendiri.

Oleh itu, mereka mungkin akan bersetuju untuk mempelajari bahasa peringkat tinggi, terutamanya jika ia menyerupai formula algebra yang mereka kenali. Pertimbangan sedemikian mendorong IBM untuk membangunkan Fortran.


IBM-704

Para penyelidik IBM yang mencipta Fortran tidak tahu betapa pentingnya bahasa ini. Apabila mereka mula bekerja pada awal tahun 1954, sains komputer berkembang secara spontan, dan semua orang bekerja mengikut kehendak. Ini membawa kepada kemunculan pengaturcara profesional dan saintis komputer.

Salah seorang pengurus IBM memutuskan bahawa pemain catur adalah pengaturcara yang baik, jadi dia memulakan perbualan dengan calon yang mungkin untuk pengaturcara semasa permainan catur dengan salah seorang pekerja IBM (yang, secara kebetulan, adalah juara catur AS).

Beberapa daripada lapan orang yang terlibat dalam pembangunan Fortran mempunyai pengetahuan serius tentang komputer. Mereka datang dari universiti dan syarikat penerbangan, serta kumpulan pengaturcaraan IBM sendiri.

Malah ketua pasukan pembangunan Fortran, John Backus, hanya mempunyai beberapa tahun pengalaman komputer apabila dia mula mencipta bahasa pengaturcaraan baharu.
Sebelum kolej, Backus adalah pelajar yang biasa-biasa sahaja ("Saya pergi ke lebih banyak sekolah daripada yang saya ingat"). Selepas berkhidmat dalam Tentera semasa Perang Dunia II, dia berakhir di New York City, di mana dia menghadiri sekolah kejuruteraan radio. "Had aspirasi saya adalah untuk membuat peranti pembiakan bunyi berkualiti tinggi," Beckus kemudian mengakui.

Bagaimanapun, seorang guru pembaikan televisyen dan radio telah mencetuskan minat Backus dalam matematik dan meyakinkannya untuk menyambung pelajarannya di Universiti Columbia. Ini adalah permulaan yang sederhana untuk salah satu kerjaya yang paling bermanfaat dalam sejarah pengkomputeran.

Jadi, pemaju, yang diketuai oleh Backus, menetap di ibu pejabat IBM di Madison Avenue di New York.

Mereka mengenal pasti konsep asas bahasa baharu, khususnya pengendali tugasan (contohnya, N = 100), yang menetapkan pembolehubah kepada nilai tertentu, memperkenalkan pembolehubah terindeks yang memberitahu komputer elemen mana daripada senarai pembolehubah yang diperlukan (contohnya , X(3) bermaksud elemen ketiga senarai, dipanggil X), mencadangkan pengendali DO yang sangat penting, yang membolehkan anda mengulangi urutan pengendali yang dikehendaki beberapa kali.

Seperti yang dinyatakan oleh Backus, kebanyakan orang percaya bahawa sumbangan utama Fortran adalah keupayaannya untuk menulis program sebagai formula algebra dan bukannya dalam bahasa mesin. Tetapi sebenarnya tidak. Pada pendapatnya, Fortran terutamanya mengautomasikan organisasi gelung. Kepentingan tugas ini apabila membangunkan aplikasi saintifik sukar untuk dipandang tinggi. Kerja pada bahasa berjalan dengan cepat.

Walau bagaimanapun, membangunkan pengkompil adalah perkara yang sama sekali berbeza. Backus memahami bahawa tidak mudah untuk menghilangkan keraguan tentang kemungkinan pengaturcaraan "automatik", iaitu, menulis program dalam bahasa peringkat tinggi. Ini akan berlaku apabila program yang dihasilkan menggunakan Fortran adalah sepantas dan boleh dipercayai seperti yang ditulis dalam kod mesin atau bahasa pemasangan, fikirnya.

Menurut rancangan itu, enam bulan diperuntukkan untuk pembangunan penyusun, tetapi kerja padanya mengambil masa lebih dari dua tahun.

Pada penghujung tahun 1956 dan pada tahun 1957, keamatan kerja pada penalaan halus dan penyahpepijatan pengkompil meningkat dengan mendadak. Dalam tempoh ini, ahli kumpulan sering menyewa bilik di hotel berdekatan, di mana mereka tidur pada waktu siang sambil bekerja pada mesin pada waktu malam untuk mempunyai masa mesin tanpa gangguan sebanyak mungkin. Kesilapan telah dihapuskan satu demi satu, dan pada April 1957 pengkompil sedia untuk digunakan oleh pemilik mesin IBM-704.

"Malu sangat"

Dalam kesilapan yang disebut Backus sebagai "memalukan yang besar," pengkompil telah dihantar ke makmal Westinghouse-Bettis dalam bentuk dek kad yang ditebuk dan tanpa sebarang arahan; yang membenarkan Herb Bright dari makmal Westinghouse-Bettis menjalankan Fortran secara membuta tuli. Pengguna lain menerima sistem pada pita magnet bersama dengan manual pengendali.

Pada suatu hari Jumaat pada April 1957, seorang penghantar surat menghantar bungkusan misteri ke pusat komputer makmal atom Westinghouse-Bettis berhampiran Pittsburgh. Pengaturcara Herb Bright dan dua rakannya membuka kotak yang tidak bertanda dan menemui timbunan kira-kira 2,000 kad tebuk, tanpa satu arahan pun.

Melihat kad tebuk, Bright teringat bahawa IBM sedang dalam proses memuktamadkan bahasa peringkat tinggi untuk digunakan pada IBM-704. Mungkin posmen membawa betul-betul penyusun yang ditunggu-tunggu ini? Bright dan rakan-rakannya memutuskan untuk memuatkan kad misteri ke dalam komputer dan melihat apa yang berlaku.

Bright memasukkan program ujian yang ditulis dalam Fortran ke dalam pembaca komputer dan menekan butang mula. Pengkompil baharu menghantar mesej kepada pencetak: "ralat dikesan dalam operator pada kad No. 25 - koma telah hilang."

Pengaturcara yang biasa mengelirukan mesej dalam bentuk kod berangka kagum dengan kejelasan maklumat ini. Operator yang salah telah diperbetulkan dan butang mula ditekan sekali lagi. Pita itu mula berputar dan komputer memuntahkan timbunan kad program yang ditebuk. Setelah kad dimuatkan ke dalam pembaca, pencetak mula berfungsi dan mencetak 28 muka surat tanpa henti. Komputer hanya membuat sedikit ralat dalam format output. “Tetapi nombornya betul! Nombornya betul!” - terang Bright kemudian.

Malah, pada masa yang sama dengan Fortran, dua lagi bahasa peringkat tinggi muncul - Cobol dan Algol. Sejak lewat 50-an, mereka telah menjadi pemimpin dalam dunia komputer untuk masa yang lama. Kebanyakan program moden ditulis dalam bahasa yang mewakili adalah keturunan ketiga-tiga bahasa ini.

Pengedaran dan penyesuaian

Tetapi pada mulanya Fortran tidak diterima dengan penuh kemesraan. Pengaturcara, seperti yang diingat oleh Backus, "sangat ragu-ragu tentang semua aplikasi kami." Walau bagaimanapun, berbanding dengan pendahulunya, Fortran agak mudah dipelajari dan digunakan.

Selain itu, IBM membekalkan kesemua 704 model dengan Fortran secara percuma. Akibatnya, menjelang 1958, lebih separuh daripada semua arahan mesin pada 60 komputer syarikat diperoleh bukan secara manual, tetapi "secara automatik," menggunakan bahasa peringkat tinggi yang baharu.

Backus memahami bahawa pengeluar yang bersaing juga akan membangunkan bahasa peringkat tinggi untuk komputer mereka. Walau bagaimanapun, Fortran cepat menjadi kebiasaan dan disesuaikan untuk pelbagai model komputer. Penyesuaian pertama telah dijalankan oleh IBM sendiri. Lima tahun kemudian, Fortran telah digunakan pada enam model komputer IBM yang berbeza, serta pada komputer dari Sperry Rand, Philco, dan lain-lain.

Pasukan kecil, termasuk David Hemmis, cepat menyesuaikan Fortran kepada IBM-650, mesin yang lebih kecil daripada IBM-704. Khemmis dan rakan-rakannya membangunkan sistem FORTRANSIT (UNTUK TRANSIT); kemudian dua perkataan ini bergabung menjadi satu. Oleh itu, sistem FORTRANSIT menjadi penterjemah pertama yang asli, bekerja pada komputer beberapa model.


David Hemmis, seorang pembangun bahasa komputer awal, memandu keretanya pada tahun 1928. Gambar diambil di Westhampton, New York semasa perlumbaan kereta 1957.

Penyelesaian

Walau bagaimanapun, kerja pada bahasa baharu itu perlu diteruskan untuk masa yang agak lama: ini menjadi jelas pada awal tahun 1957, apabila proses penyahpepijatan diteruskan. Backus dan pembangun lain menyedari bahawa bahasa itu memerlukan sistem yang lebih tepat untuk mendiagnosis ralat perisian. Di samping itu, adalah perlu untuk melaksanakan kemungkinan penulisan subrutin dan modul program yang berasingan dan bebas. Ini akan memberi bahasa manfaat lain: penggunaan semula kod.

Terima kasih kepada usaha pemaju, Fortran II muncul hanya setahun selepas penciptaan yang asal. Salah satu kelebihan bahasa baharu itu ialah ia membenarkan serpihan kod pemasang dimasukkan ke dalam atur cara. Versi kemudian, Fortran III, telah dicipta pada tahun 1958. Fortran IV, yang memperluaskan lagi keupayaan bahasa itu, dikenali pada tahun 1962.

Teras bahasa, pengendali dan ungkapan asasnya, kekal hampir tidak berubah selama bertahun-tahun. Tetapi apabila Fortran berulang kali disesuaikan dengan sistem mesin baru yang tidak dimaksudkan, perbezaan secara beransur-ansur terkumpul. Beberapa peluang telah hilang, yang baru muncul. Ini tidak dapat tidak menyebabkan kekeliruan.

Sebagai contoh, tidak semua penyusun mentafsir pernyataan DO yang sangat penting dengan cara yang sama: sesetengahnya sentiasa melaksanakan gelung sekurang-kurangnya sekali tanpa menyemak sama ada ia harus dilaksanakan sama sekali, manakala yang lain melakukannya. Untuk menyelesaikan masalah sedemikian, pengeluar dan pengguna komputer bersetuju untuk menyeragamkan bahasa tersebut.

Pada tahun 1966, standard pertama dinamakan Fortran 66. Pada tahun 1977, oleh itu, standard Fortran 77 dikeluarkan. Pada tahun 1991, Fortran 90 muncul. Fortran 95 telah dicipta pada tahun 1997.

Fortran di USSR

Di Kesatuan Soviet, Algol-60 lebih popular. Oleh itu, Fortran muncul di negara ini kemudian. Walau bagaimanapun, ia secara beransur-ansur muncul di atas dalam populariti. Penyusun (penterjemah) telah dibangunkan untuk kebanyakan komputer domestik - "Minsk-32", BESM-4, BESM-6, AS-6, ES Computer, SM Computer, MVK "Elbrus" dan sebagainya.

Di IPM im. Keldysh, beberapa penterjemah telah dibangunkan pada masa yang berbeza. Dua daripadanya - Fortran-Almo dan Forshag (Fortran stepwise) ditulis dalam bahasa Almo dan kod itu dihasilkan dalam bahasa yang sama. Ini memungkinkan untuk memasang penterjemah pada beberapa jenis komputer yang berbeza. Kedua-dua penterjemah melaksanakan standard Fortran 66.

Foreshag juga termasuk bahasa perbualan yang membenarkan kod dibuat, diedit dan diterjemahkan secara interaktif. Di samping itu, satu set program grafik untuk Fortran telah dibangunkan - Graphor, yang digunakan secara aktif pada pelbagai komputer.

Fortran kekal popular di kalangan saintis sehingga hari ini. Ini adalah bahasa pengaturcaraan peringkat tinggi pertama yang mempunyai penterjemah, yang telah menerima aplikasi praktikal dan pembangunan selanjutnya. Seperti yang dinyatakan dalam manual IBM 1957, "Fortran menyediakan cara yang cekap untuk menulis 704 program yang mudah dipelajari dan tidak memerlukan pengetahuan komputer yang luas."

Sejak itu, saintis, jurutera dan pelajar telah dapat berkomunikasi dengan komputer tanpa bantuan pengaturcara profesional menulis dalam bahasa himpunan.

Walau bagaimanapun, generasi pengaturcara seterusnya mula menganggap Fortran sebagai "fosil." Edsger Dijkstra menyindir bahawa mengajar pelajar bahasa ini harus dianggap sebagai jenayah yang serius.

Pertengahan 50-an dicirikan oleh kemajuan pesat dalam bidang pengaturcaraan. Peranan pengaturcaraan dalam kod mesin mula berkurangan, dan jenis bahasa pengaturcaraan baru mula muncul, bertindak sebagai perantara antara mesin dan pengaturcara. Masanya telah tiba untuk generasi kedua dan ketiga bahasa pengaturcaraan

Sejak pertengahan 50-an. abad XX mula mencipta bahasa pengaturcaraan peringkat tinggi yang pertama. Bahasa-bahasa ini adalah bebas Mesin (tidak terikat pada jenis komputer tertentu).

Tetapi setiap bahasa telah membangunkan penyusunnya sendiri - program yang melaksanakan penyusunan.

Penyusunan ialah terjemahan atur cara yang ditulis dalam bahasa sumber peringkat tinggi ke dalam atur cara yang setara dalam bahasa peringkat rendah yang hampir dengan kod mesin (kod mutlak, modul objek, kadangkala bahasa himpunan)

bahasa pengaturcaraan FORTRAN

Bahasa peringkat tinggi pertama dicipta antara 1954 dan 1957 oleh sekumpulan pengaturcara yang diketuai oleh John Backus di IBM Corporation dan ini menjadi peringkat seterusnya dalam pembangunan bahasa pengaturcaraan. Ia adalah bahasa pengaturcaraan FORTRAN. Ia bertujuan untuk pengiraan saintifik dan teknikal. Nama Fortran adalah singkatan untuk FORmulaTRANslator (penterjemah formula).

Sejarah bahasa

Pada penghujung tahun 1953, John Backus mencadangkan untuk mula membangunkan alternatif yang berkesan kepada pemasang untuk pengaturcaraan pada PC IBM 704. Menjelang pertengahan 1954, draf spesifikasi bahasa Fortran telah siap. Manual pertama untuk Fortran muncul pada Oktober 1956, bersama-sama dengan pengkompil pertama, dihantar pada April 1957. Pengkompil adalah pengkompil yang mengoptimumkan kerana pelanggan enggan menggunakan bahasa pengaturcaraan peringkat tinggi yang tidak dapat menjana kod dengan prestasi yang lebih rendah daripada pemasangan bahasa.

Pada masa itu, masyarakat ragu-ragu tentang cara baru pengaturcaraan dan tidak percaya bahawa Fortran akan membenarkan pengaturcaraan yang lebih pantas dan lebih cekap. Menurut John Backus sendiri, kebanyakan kerjanya bertujuan untuk "menjadi malas." Dia benar-benar tidak suka menulis program untuk IBM 701 dalam pemasang.

Bahasa ini telah diterima pakai secara meluas oleh saintis untuk menulis program intensif pengiraan. Kemasukan jenis data yang kompleks menjadikannya sangat sesuai untuk aplikasi teknikal.

Menjelang tahun 1960, terdapat versi Fortran untuk komputer IBM 709, 650, 1620, 7090. Populariti hebatnya menggalakkan pengeluar komputer yang bersaing untuk mencipta penyusun Fortran untuk komputer mereka. Oleh itu, pada tahun 1963 terdapat lebih daripada 40 penyusun untuk platform yang berbeza. Itulah sebabnya Fortran dianggap sebagai bahasa pengaturcaraan pertama yang digunakan secara meluas.

Fortran di USSR

Fortran muncul di USSR lebih lambat daripada di Barat, kerana pada mulanya Algol dianggap sebagai bahasa yang lebih menjanjikan. Komunikasi antara ahli fizik Soviet dan rakan-rakan mereka di CERN memainkan peranan utama dalam pengenalan Fortran, di mana pada tahun 1960-an hampir semua pengiraan dijalankan menggunakan program Fortran.

Pengkompil Soviet Fortran pertama dicipta pada tahun 1967 untuk mesin Minsk-2, tetapi ia tidak mendapat banyak populariti. Pengenalan meluas Fortran bermula selepas penciptaan pada tahun 1968 penyusun FORTRAN-DUBNA untuk mesin BESM-6. Komputer ES, yang muncul pada tahun 1972, pada mulanya telah mempunyai penterjemah Fortran ("dipinjam" daripada IBM/360 bersama-sama dengan perisian lain)

Fortran moden. Kebaikan bahasa

Fortran digunakan secara meluas terutamanya untuk pengkomputeran saintifik dan kejuruteraan. Ia sesuai untuk menyelesaikan masalah berangka, kerana banyak perpustakaan telah ditulis selama lebih daripada 50 tahun, jadi bahasa itu digunakan sekarang dan tidak dalam bahaya dilupakan dalam masa terdekat. Ia masih digunakan hingga ke hari ini, bagaimanapun, bukan kerana reka bentuknya yang berjaya, tetapi kerana sejumlah besar program yang ditulis di atasnya, yang tidak masuk akal untuk diubah dan, terutamanya, menulis semula.

Mungkin, jika anda ingin mengira sesuatu dengan cepat, maka Fortran akan menjadi salah satu pilihan terbaik. Inilah sebabnya mengapa bahasa dicipta.

Strukturnya membolehkan pengkompil mengoptimumkan pengiraan dengan baik.

Di kalangan saintis, sebagai contoh, terdapat pepatah bahawa sebarang masalah matematik sudah mempunyai penyelesaian di Fortran, dan, sememangnya, anda boleh menemui di antara beribu-ribu pakej Fortran pakej untuk mendarab matriks, pakej untuk menyelesaikan persamaan kamiran kompleks, dan banyak lagi, ramai lagi.