← 基本情報 道場

出題範囲 › 第 1 章

第 1 章 基礎理論

コンピュータは 0 と 1 で考える。この章では次の 30 個の知識点を、解説・インタラクティブ教材・練習問題で学びます。

第 1 章 基础理论:一切从 0 和 1 开始

ビットとバイト・n ビットで表せる数・補助単位

0/1 の箱=ビット、8 個で 1 バイト。n ビットで 2ⁿ 通りを表せること、逆に「何ビット必要か」、k・M・m・μ などの補助単位の換算を即答できるようにする。

位与字节、n 位能表示多少种、辅助单位:一个 0/1 的格子叫「位」,8 位是 1 个字节。要能马上说出 n 位能表示 2ⁿ 种、反过来「需要几位」,以及 k、M、m、μ 等单位的换算。

n進数の考え方・基数と重み

n進数は「n 個の記号を使い、n 個集まると繰り上がる」数え方。各桁の重みは基数のべき乗(整数部 n⁰, n¹, n² … / 小数部 n⁻¹, n⁻² …)であることを理解する。

n 进制的概念、基数与位权:n 进制就是「用 n 个符号,满 n 进一」的计数方法。要理解每一位的位权是基数的幂(整数部分 n⁰、n¹、n²…,小数部分 n⁻¹、n⁻²…)。

n進数 → 10進数

「各桁の数字 × 重み を全部足す」だけ。2・8・16進数(小数を含む)を10進数に直せるようにする。

n 进制转十进制:方法只有一个:每一位的数字 × 位权,全部相加。要能把 2、8、16 进制(含小数)转成十进制。

10進数 → 2進数の基数変換

整数部は「2 で割って余りを下から」、小数部は「2 を掛けて整数部を上から」。この 2 つの手順で、どんな10進数も2進数に直せるようになる。

十进制转二进制:整数部分「除 2 取余,从下往上读」,小数部分「乘 2 取整,从上往下读」。掌握这两个步骤,就能把任何十进制数转成二进制。

2・8・16進数の相互変換

2進数 ⇄ 8進数は 3 桁ずつ、2進数 ⇄ 16進数は 4 桁ずつ。区切りは小数点から外側へ、足りない所は 0 で埋める。10進数からは「一度2進数を経由」するのが最短。

2・8・16 进制互换:2 ⇄ 8 进制每 3 位一组,2 ⇄ 16 进制每 4 位一组。分组从小数点向两边进行,不够的补 0。从十进制出发时,「先转成二进制」最快。

2進数の足し算・符号ビット・補数

2進数の足し算は「1 + 1 = 10(繰り上がり)」だけ注意。コンピュータは引き算を「補数の足し算」で行う。先頭の符号ビットと、n の補数・n−1 の補数の意味を理解する。

二进制加法、符号位、补数:二进制加法只要注意 1 + 1 = 10(进位)。计算机用「加补数」来做减法。要理解最高位的符号位,以及 n 的补数、n−1 的补数的含义。

2の補数による負数の表現と減算

「ビット反転して +1」で負の数を作り、引き算を足し算に変える。8 ビットで表せる範囲 −128〜127 を即答できるようにする。

用补码表示负数与减法:用「按位取反再加 1」表示负数,把减法变成加法;能立刻说出 8 位补码的表示范围 −128〜127。

論理シフト

ビット列を左に n ずらすと ×2ⁿ、右に n ずらすと ÷2ⁿ。空いた所には 0 を入れ、はみ出たビットの意味(オーバーフロー/余り)を説明できるようにする。

逻辑移位:位串左移 n 位就是 ×2ⁿ,右移 n 位就是 ÷2ⁿ。空出的位补 0;能说明移出的位意味着什么(溢出 / 余数)。

算術シフト

算術シフトは符号ビットを動かさないシフト。右シフトでは空きに符号ビットと同じ値を入れ、左シフトでは符号と違うビットがはみ出たらオーバーフロー。負の数も正しく 2ⁿ 倍・1/2ⁿ 倍できる。

算术移位:算术移位不移动符号位。右移时空位补与符号位相同的值;左移时移出与符号位不同的位就溢出。这样负数也能正确地乘 2ⁿ、除 2ⁿ。

シフトと加算による掛け算

掛ける数を 2 のべき乗の和に分解すれば、掛け算は「左シフト+足し算」だけでできる。例:×10 = ×8 + ×2 = (3 ビット左シフト)+(1 ビット左シフト)。

用移位和加法做乘法:把乘数拆成 2 的幂之和,乘法就只需要「左移 + 加法」。例:×10 = ×8 + ×2 = (左移 3 位)+(左移 1 位)。

固定小数点と浮動小数点(IEEE754)

固定小数点は小数点の位置が決まっている表し方、浮動小数点は「仮数 × 2^指数」で小数点を動かせる表し方。IEEE754 単精度は 符号 1・指数 8(バイアス 127)・仮数 23 ビット。10進数から 32 ビットを組み立てられるようにする。

定点数与浮点数(IEEE754):定点数的小数点位置固定;浮点数用「尾数 × 2^指数」表示,小数点可以移动。IEEE754 单精度是 符号 1 位、指数 8 位(偏移 127)、尾数 23 位。要能把十进制数组装成 32 位。

誤差の種類

コンピュータの計算で生じる 5 つの誤差(桁あふれ・情報落ち・桁落ち・打切り・丸め)を、場面を見て即座に見分けられるようにする。

误差的种类:能根据情境立刻分辨计算机计算中的 5 种误差:溢出、信息丢失、有效数字丢失、截断、舍入。

論理演算・ベン図・真理値表

「かつ」=論理積(AND)、「または」=論理和(OR)、「でない」=否定(NOT)。同じ関係をベン図・真理値表・論理式の 3 通りで表せるようにする。

逻辑运算、维恩图、真值表:「并且」= 逻辑与(AND),「或者」= 逻辑或(OR),「不是」= 逻辑非(NOT)。要能用维恩图、真值表、逻辑式三种方式表示同一个关系。

6 つの論理回路(AND・OR・NOT・NAND・NOR・XOR)

6 つの論理回路について、真理値表・論理式・ベン図を相互に変換できるようにする。特に「N がつくと出力が逆」「XOR は違うときだけ 1」を体で覚える。

6 种逻辑电路:能在 6 种逻辑电路的真值表、逻辑式、维恩图之间自由转换。重点记住「带 N 的输出取反」「XOR 只有两个输入不同时才输出 1」。

ド・モルガンの法則と論理式の法則

ド・モルガンの法則「線を切ったら記号を変える」(A+B‾=A‾⋅B‾\overline{A+B} = \overline{A}\cdot\overline{B}、A⋅B‾=A‾+B‾\overline{A\cdot B} = \overline{A}+\overline{B})と、A⋅A‾=0A\cdot\overline{A}=0・A+A‾=1A+\overline{A}=1・分配法則などを使って論理式を変形できるようにする。

德摩根定律与逻辑式的法则:掌握德摩根定律「断开横线,符号互换」,以及 A·非A = 0、A + 非A = 1、分配律等,能用它们变形逻辑式。

論理回路・論理式の総合問題

組み合わせた回路は、途中の出力を 1 つずつ書き出して真理値表を作れば必ず解ける。論理式で変形する別解(分配法則+A⋅A‾=0A\cdot\overline{A}=0)も使えるようにする。

逻辑电路与逻辑式综合题:组合电路只要把中间各节点的输出一个个写出来、做出真值表,就一定能解出。也要会用逻辑式变形的另一种解法(分配律 + A·非A = 0)。

半加算器・全加算器

半加算器は 1 ビット同士の足し算回路で、和 S = XOR、桁上げ C = AND。全加算器は下位からの桁上げも含めて 3 ビットを足す回路(半加算器 2 つ+OR)。

半加器与全加器:半加器是 1 位加 1 位的加法电路:和 S = 异或,进位 C = 与。全加器把低位进位也算上,是3 个位相加的电路(2 个半加器 + 或门)。

状態遷移図

状態遷移図は「今の状態 + 入力 → 出力 + 次の状態」を ○ と矢印で表した図。矢印のラベル「入力/出力」を 1 つずつたどり、状態遷移表に書き出せば必ず解ける。

状态迁移图:状态迁移图用圆圈和箭头表示「当前状态 + 输入 → 输出 + 下一个状态」。沿着箭头上的「输入/输出」标签一步步走,并写进状态迁移表,就一定能解出来。

ビット演算とマスク

元のビット列とマスクパターンを桁ごとに論理演算して、特定の桁だけを操作する。取り出し=AND、反転=XOR、1 にする=OR。操作したい桁を 1、それ以外を 0 にしたマスクを作るのが基本。

位运算与掩码:把原位串和掩码逐位做逻辑运算,只操作指定的位。取出用 AND,取反用 XOR,置 1 用 OR。基本做法:想操作的位设为 1,其余设为 0,做成掩码。

確率と場合の数(順列・組合せ)

確率 =(起こる場合の数)÷(全部の場合の数)。場合の数は、並べるなら順列 nPr_nP_r、選ぶだけなら組合せ nCr_nC_r。「かつ」は掛け算(積の法則)、「または」は足し算(和の法則)。「少なくとも」は 1 から引く。

概率与计数(排列、组合):概率 =(符合条件的情况数)÷(全部情况数)。计数时,要排序用排列 nPr,只选不排用组合 nCr。「并且」用乘法,「或者」用加法;「至少」用 1 减。

期待値・条件付き確率

期待値は 1 回あたりの平均で、(確率 × 値)をすべて足す。「〜だったとき、それが A である確率」(条件付き確率)は、条件に当てはまるものだけに絞ってその中の割合を求める。

期望值与条件概率:期望值是平均每次能得到的值,把「概率 × 值」全部加起来。「已知……时,它是 A 的概率」(条件概率)要先把范围缩小到满足条件的部分,再求其中的比例。

行列の基本と行列の積

行列は数を縦横に並べたもので、大きさは「行数×列数」。足し算・引き算・スカラー倍は要素ごとに計算。行列の積は「内側が等しいときだけ計算でき、結果は外側の大きさ」、各要素は「左の行 × 右の列」を掛けて足す。

矩阵基础与矩阵乘法:矩阵是把数横竖排列起来,大小用「行数×列数」表示。加减和数乘都是逐元素计算。矩阵乘法「内侧相等才能乘,结果大小取外侧」,每个元素是「左行 × 右列」对应相乘再相加。

単位行列・逆行列・連立方程式

単位行列 II は対角が 1、他が 0 の正方行列で、掛けても相手を変えない(数の 1 のような役割)。AA に掛けて II になる行列が逆行列 A−1A^{-1}。連立方程式は行列で表し、行基本変形で左側を単位行列にすれば解が右側に現れる。

单位矩阵、逆矩阵与联立方程:单位矩阵 I 是对角线为 1、其余为 0 的方阵,乘上它不改变对方(像数字 1)。与 A 相乘得到 I 的矩阵是逆矩阵 A⁻¹。联立方程可以写成矩阵,用初等行变换把左边变成单位矩阵,右边就是解。

度数分布・代表値・分散と標準偏差

度数分布表は階級ごとのデータ数、ヒストグラムはそのグラフ。代表値は 平均値(合計÷個数)・中央値(並べて真ん中)・最頻値(一番多い値)。ばらつきは 分散(ずれの 2 乗の平均)と標準偏差(√分散) で表す。

频数分布、代表值、方差与标准差:频数分布表是各组的数据个数,直方图是它的图形。代表值有平均值(总和÷个数)、中位数(排序后正中间)、众数(出现最多的值)。离散程度用方差(偏差平方的平均)和标准差(√方差)表示。

正規分布・相関係数・歪度と尖度

分布の「形」を数字で読む。平均 ± 2σ に約 95%、相関係数は −1〜1、散布図の傾きと符号、歪度・尖度の正負を図から判断できるようにする。

正态分布、相关系数、偏度与峰度:学会用数字读懂分布的「形状」:平均值 ± 2σ 内约有 95%,相关系数在 −1〜1,能从散点图判断正负相关,能从图形判断偏度、峰度的正负。

相関と因果・統計的分析手法

相関は「一緒に増減する」関係、因果は「原因と結果」の関係。相関があっても因果があるとは限らない(第 3 の変数による疑似相関)。分析手法は 説明変数 1 つ→単回帰、複数→重回帰、結果がカテゴリ→ロジスティック回帰、関係の強さ→相関分析、要約→主成分分析。

相关与因果、统计分析方法:相关是「一起增减」的关系,因果是「原因与结果」的关系。有相关不一定有因果(第三变量造成的虚假相关)。分析方法:1 个解释变量→单回归,多个→多元回归,结果是类别→逻辑回归,看关系强弱→相关分析,归纳概括→主成分分析。

仮説検定と 2 種類の誤り

仮説検定は、ある仮説(帰無仮説)が正しいかを統計的に確かめる方法。第一種の誤り=本当は仮説が正しいのに不採用(棄却)にする、第二種の誤り=本当は仮説が間違っているのに採用してしまう。両方を同時にゼロにはできないので、バランスを取る。

假设检验与两类错误:假设检验是用统计方法检验某个假设(原假设)是否正确。第一类错误:原假设为真却拒绝了它;第二类错误:原假设为假却接受了它。两者不能同时为零,需要权衡。

ハフマン符号化

ハフマン符号化は、よく出る文字ほど短いビット列を割り当ててデータ量を減らす圧縮方法。出現頻度の小さい 2 つを繰り返しまとめて木を作り、枝に 0/1 を振る。平均ビット長=Σ(ビット数 × 出現確率)。

哈夫曼编码:哈夫曼编码给出现越频繁的字符分配越短的位串,以减少数据量。反复把出现频率最小的两个合并成树,再在树枝上标 0/1。平均码长 = Σ(位数 × 出现概率)。

逆ポーランド記法

逆ポーランド記法(後置記法)は演算子を後ろに書く記法:A+BA+B → AB+。括弧が不要で、スタックを使って左から順に計算できる。変換は「左 → 右 → 演算子」の順に書き出すだけ。

逆波兰表示法:逆波兰表示法(后缀表示法)把运算符写在后面:A+B → AB+。不需要括号,可以用栈从左到右依次计算。转换时只要按「左 → 右 → 运算符」的顺序写出即可。

BNF 記法

BNFはプログラミング言語やデータ形式の文法を書き表す記法。::=「〜と定義する」、|「または」、<名前>「定義された記号」。自分自身を使った定義(<数> ::= <数字> | <数><数字>)で「くり返し」を表す。

BNF 记法:BNF 是描述编程语言或数据格式语法的记法:::=「定义为」,|「或」,<名称>「已定义的符号」。用引用自身的定义(<数> ::= <数字> | <数><数字>)表示「重复」。

基本情報 道場で学習を始める →

第 2 章 A/D変換 →