検索
ホームページよくある問題高級言語で書かれたソースプログラムをターゲットプログラムに翻訳できるシステムソフトウェアとは何ですか?

高級言語で書かれたソースプログラムをターゲットプログラムに翻訳するシステムソフトウェアが「コンパイラ」です。コンパイラは、生成実装アプローチを使用して実装された変換プログラムであり、高級プログラミング言語で記述されたソース プログラムを入力として受け取り、アセンブリ言語または機械語で表現されたターゲット プログラムを出力として使用します。

高級言語で書かれたソースプログラムをターゲットプログラムに翻訳できるシステムソフトウェアとは何ですか?

このチュートリアルの動作環境: Windows 7 システム、Dell G3 コンピューター。

高級言語で書かれたソースプログラムをターゲットプログラムに翻訳するシステムソフトウェアが「コンパイラ」です。

コンパイラ、コンパイル プログラム (コンパイラとも呼ばれる) は、高級プログラミング言語で書かれたソース プログラムを、機械語形式の同等のターゲット プログラムに翻訳する翻訳プログラムを指します。コンパイラは、生成的実装アプローチを使用して実装される翻訳プログラムです。高級プログラミング言語で書かれたソースプログラムを入力とし、アセンブリ言語や機械語で表現されたターゲットプログラムを出力とします。コンパイルされたターゲット プログラムは、通常、実行中のプログラムのサポートを受けて実行し、初期データを処理し、必要な計算結果を計算するために、実行段階も通過します。

機能:

コンパイラはソース プログラムを解析し、それをターゲット プログラムに合成する必要があります。まず、ソース プログラムの正当性をチェックし、それをいくつかの基本コンポーネントに分解し、次に、これらの基本コンポーネントに基づいて、対応する同等のターゲット プログラム部分を確立します。これらのタスクを完了するために、コンパイラは分析フェーズ中にいくつかのテーブルを作成し、分析および合成中に簡単に参照および処理できるようにソース プログラムを中間言語形式に変換する必要があります。

データ構造の分析と合成で使用される主なデータ構造には、シンボル テーブル、定数テーブル、中間言語プログラムなどがあります。シンボル テーブルは、ソース プログラムで使用される識別子とその属性で構成されます。属性には、型 (変数、配列、構造体、関数、プロシージャなど)、型 (整数、実数型、文字列、複合型など) が含まれます。 、ラベル)など)、およびターゲット プログラムで必要なその他の情報。定数テーブルは、ソース プログラムで使用される定数 (定数のマシン表現を含む)、および定数に割り当てられたターゲット プログラムのアドレスで構成されます。中間言語プログラムは、ソース プログラムをターゲット プログラムに変換する前に導入されるプログラムの中間形式であり、その表現の選択は、コンパイラが後でそれをどのように使用および処理するかによって決まります。一般的に使用される中間言語形式には、ポーランド語表現、トリプル、クアドルプル、および間接トリプルが含まれます。

ソースプログラムの一部の解析は、字句解析、構文解析、意味解析の3つのステップで行われます。字句解析は、字句解析プログラム (スキャナーとも呼ばれます) によって完了します。そのタスクは、単語 (つまり、識別子、定数、予約語、さまざまな演算子、句読点など) を識別し、記号テーブルと定数テーブルを作成し、変換 ソースプログラムをコンパイラが解析・処理しやすい内部形式に変換します。構文アナライザーはコンパイラーの中核部分であり、その主な役割は、ソース プログラムが言語の文法規則に従って文法的であるかどうかをチェックすることです。文法的でない場合は構文エラーメッセージが出力され、文法的である場合はソースプログラムの文法構造を分解して中間言語形式の内部プログラムを構築します。文法分析の目的は、単語がどのように文を形成し、ステートメントがどのようにプログラムを形成するかを理解することです。意味解析プログラムは、法的なプログラム構造が意味的に正しいかどうかをさらにチェックし、識別子や定数が正しく使用されていることを確認し、必要な情報を収集してシンボルテーブルや中間言語プログラムに保存し、対応する意味処理を実行することを目的としています。

関連する推奨事項: 「プログラミング学習

以上が高級言語で書かれたソースプログラムをターゲットプログラムに翻訳できるシステムソフトウェアとは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser は、オンライン試験を安全に受験するための安全なブラウザ環境です。このソフトウェアは、あらゆるコンピュータを安全なワークステーションに変えます。あらゆるユーティリティへのアクセスを制御し、学生が無許可のリソースを使用するのを防ぎます。

MantisBT

MantisBT

Mantis は、製品の欠陥追跡を支援するために設計された、導入が簡単な Web ベースの欠陥追跡ツールです。 PHP、MySQL、Web サーバーが必要です。デモおよびホスティング サービスをチェックしてください。

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。

SublimeText3 英語版

SublimeText3 英語版

推奨: Win バージョン、コードプロンプトをサポート!

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)