• 検索結果がありません。

情報基礎

N/A
N/A
Protected

Academic year: 2021

シェア "情報基礎"

Copied!
13
0
0

読み込み中.... (全文を見る)

全文

(1)

情報基礎

C

言語プログラミング

(2)

プログラミング言語

プログラミング言語は1950年以前の機械語,アセンブリ言語の開発を始め として,現在までに非常に多くの言語が開発されました.多くの人間に利用 されたプログラムはその設計思想が受け継がれ,新たな言語として誕生す る場合もあります.

参考:日経ソフトウェア2008年5月号

(3)

低級言語

機械寄りの言語で,ハードウェア(CPU)に依存したプログラムを書く必要があります が,実行速度は速いです.

機械語(マシン語): CPUが直接理解し実行できる言語です.2進数(01)で表 現されます.

アセンブリ言語(アセンブラ言語): 機械語の命令に11で対応します.

機械語に翻訳する作業が必要(アセンブル)です.

高級言語

日常の言語表現(英語)に近く,人間にとって分かり易いです.コンピュータの種類によ る違いがありません(移植性が高い).機械語に翻訳する必要があります.

コンパイラ言語:コンパイラ(翻訳プログラム)で機械語に一括変換します.

インタプリタ言語(スクリプト言語):命令を1つずつ翻訳して実行します.

コンピュータと対話するようにプログラミングが出来ますが,実行速度は比較的 遅いです.

(4)

C言語の特徴

C

言語

1972

AT&Tベル研究所というところでオペレーティングシステムであるUNIXを記

述する目的で作成されました.高級言語であり,コンパイラ言語です.

組み込み系プログラミング(マイコンプログラミング)にも利用されています.

実用性・普及度・企業での利用度は高いです.

C言語よりも年代が新しい言語は大きな影響を受けています.

※別紙「プログラミング言語について」にこの他の言語についても まとめてあるので,参考にしてください.

(5)

プログラミングの流れ

プログラミング:

プログラムを書く

コンパイルとリンク:

プログラムを翻訳・結合する

実行:

実行ファイルを実行する

(動作確認)

デバッグ:

プログラムの誤り修正

完成!!

(6)

プログラミング

プログラム (ソースコード):

問題解決のための手順(アルゴリズム)をプログラミング言語に

より記述したものです.授業ではbcpadというソフトウェアでC言

語プログラミングを学習します.

(7)

プログラム(ソースコード)の作成

*:C言語のソースファイル名は「ファイル名.c」です.

.(ドット)以下を拡張子と呼び,どのような種類のファイルの内容かを示します.

#include <stdio.h>

int main(void) {

printf("Hello, world!");

return 0;

}

test.c

(8)

プログラム(ソースコード)の作成

(9)

コンパイルとリンク

コンパイル:オブジェクトファイルに変換します.

リンク:オブジェクトファイルとライブラリなどを結びつけて実 行ファイルを作成します.

printf(“Hello..”);

11001101 00001001 01001011 01010…..

01101101 01001…..

01110011 00110…..

11001101 00001001 010……..

01101101 01001…..

コンパイラで 機械語に翻訳

リンカで 結合

printf関数 の内容

printf関数を 呼び出す

ソースコード 実行

オブジェクト ファイル

ライブラリ

実行ファイル

(10)

ビルド(cpadでのコンパイルとリンク)

クリックしてください

(11)

実行

正しく動いているか確認します(動作確認).

・コンパイルでエラーが無ければ,実行ファイルが生成されます.

・実行ファイルを実行して正しく動作しているか確認します.

・コンパイルの失敗や動作不良の場合はデバッグを行います.

(12)

デバッグ

※別紙「デバッグについて」も参考にしてください.

※エラーメッセージが示す行はその場所に必ず誤りがあるので はなく,その周辺の場合があります.

(13)

デバッグ:現段階で誤りやすい内容

bcpadでのエラーメッセージ エラーメッセージの意味 修正方法の例

不正な文字 ' ' (0x8140) 全角文字がプログラムの不必要 な部分に混ざっています。

削除するか、半角文字に修正しま す。全角のスペースは□で表示さ れているので、参考にしてくださ い。

関数呼び出しに ) がない または

複合文に } がない

括弧の対応がくずれています。 ( と ){ と }は対応する 必要があります。数をそろえてく ださい。

プ ロ ト タ イ プ 宣 言 の な い 関 数 'printq' の呼び出し

入力間違いです。 正しいものに修正します。この場

合ではprintfです。

bcpadでの警告メッセージ 警告メッセージの意味 修正方法の例

プ ロ ト タ イ プ 宣 言 の な い 関 数 'printf' の呼び出し

#include <stdio.h>が無いです。 #include <stdio.h>をプログ ラ ムの最初に書きます。

参照

関連したドキュメント

[1] J.R.B\&#34;uchi, On a decision method in restricted second-order arithmetic, Logic, Methodology and Philosophy of Science (Stanford Univ.. dissertation, University of

地図 9 “ソラマメ”の語形 語形と分類 徽州で“ソラマメ”を表す語形は二つある。それぞれ「碧豆」[pɵ thiu], 「蚕豆」[tsh thiu]である。

いずれも深い考察に裏付けられた論考であり、裨益するところ大であるが、一方、広東語

この見方とは異なり,飯田隆は,「絵とその絵

語基の種類、標準語語幹 a語幹 o語幹 u語幹 si語幹 独立語基(基本形,推量形1) ex ・1 ▼▲ ・1 ▽△

事 業 名 夜間・休日診療情報の多言語化 事業内容 夜間・休日診療の案内リーフレットを多言語化し周知を図る。.

しかし,物質報酬群と言語報酬群に分けてみると,言語報酬群については,言語報酬を与

Guasti, Maria Teresa, and Luigi Rizzi (1996) &#34;Null aux and the acquisition of residual V2,&#34; In Proceedings of the 20th annual Boston University Conference on Language