[CS50] 1. けいさんじこ


CSの勉強を始める
非プロフェッショナルとして、開発者として成長するには、基礎的なCS知識が必要です.だから難しいかもしれないので、延期してまた延期して、今日やっと始まりました.
NAVERが提供する『ブストコス』を使用して〈CS 50〉を講義している.最初の授業のテーマ計算を整理して考えます.

1.計算事故



コンピュータの簡単な表現には3つのステップがあります.情報の「入力」と処理結果の「出力」、および処理プロセスの「コンピュータ科学」が含まれています.すなわち,CSの学習は処理過程を実現するために蓄積された知識である.

(1)バイナリ


「コミュニケーションのために言語が必要なように、コンピュータも情報を処理するために言語が必要です.」機械語」は、その名の通り、機械が使う言語で、0と1しか使いません.1はtrueまたはon、0はfalseまたはoffとして処理できます.単純な0と1の組み合わせを「bit(ビット,バイナリビット)」と呼ぶ.このような組み合わせを複数使用すると、コンピュータは私たちの言語を表現することができます.
例えば、十進法123を機械に認識させる.

10進数と2進数
123をバイナリ数に変換すると111011です.
この整数は1の桁数から2 nに上昇した.コンピュータはゼロから始まるので、20、21、22…と数字の桁数を表します.
DEC \ BIN
27(128)
26(64)
25(32)
24(16)
23(8)
22(4)
21(2)
20(1)
123
0
1
1
1
1
0
1
1
1と書かれた2進数のすべての値を加算します.64+32+16+8+2+1=123.情報を表現するたびにこのように計算することができます.以下に、ビットサイズに応じて表現できる情報の例を示す.

出典:ブスコース

(2)情報の表現


すなわち,バイナリを用いて情報を表し,異なる方法で異なるとその意味も色あせる.それを防ぐため、米国は文字表現を標準化した.「ASCII(ASCII、情報交換用のアメリカ標準コード)」、大文字Aで65、Iで73…

'HELLO!'「ASCII」コードとして表示
同じ数字でもRGB値を入力すれば色を表すことができ、音符を数字に変換すれば音を出すことができます.
最近では'Unicode'を通じて、複数の国の文字、様々な記号、表情記号などを表現することができます.

(3)アルゴリズム


アルゴリズムの基本的な定義は問題を解決する段階的な方法である.問題が発生した場合、アルゴリズムを使用して正しい解決策を導出します.スーパーでケチャップを買うとします.入り口の棚から、品物を一つ一つ確認してケチャップを探します.小さなお店ならすぐに見つけられますが、大型スーパーなら時間がかかります.運が悪くてケチャップが一番奥にあると、スーパーのすべての陳列商品を閲覧する不吉なことが起こります.もしあなたが考えを変えたら、2つ確認するたびに、最初の2倍速くなりますが、これはまだ良い解決策ではありません.
すなわち,アルゴリズムの精度は重要であるが,効率も重要である.そこで、スーパーで初めて棚から閲覧するのではなく、「ソース」カウンターでケチャップを探します.効率を大幅に向上させることに相当します.

アルゴリズムの位置
コンピュータは、前のリソース(バイナリ、情報の表示)を介して、入力と出力の間でアルゴリズムを実行します.これを実現するコードを「偽コード」と呼ぶ.コードには、関数、条件文、不規則文、重複文など多くの機能があります.コンピュータはこれを説明してoutputを見せてくれます.
前のケチャップの購入過程を医者のコードで表現します.
1.スーパーに入る.
2.すべてのセクションforを参照してください.
3.if番組名が「ソース」なら
4.「ケチャップ」を購入.
5.breakを参照しないでください.
6.スーパーへ行きます.
論理を理解するためにスクラッチ教育も行っていますが、基礎部分なので省略しました.傷もつけないしかし、コードに興味があったり、子供たちにコードの概念を教えようとしたりしたら、傷も悪くありません.
知っていると思ったが、整理するのは複雑で難しい.たぶんNAVERブログに書いてある時に表記でいちいち編集して書くと結構時間がかかりますまだアンダーレバーに慣れていないので、ゆっくり慣れる必要があります.
とりあえず今日はこれでおしまい明日も勉強と記録を続けます.