if文とは、指定した式の結果や値が真理値の真である場合に、任意のプログラムを実行できる仕組みのことです。
例えば、あるプログラミング言語では、以下の構文がif文です。
if(●){
//●が真のときにこの中のプログラムが実行される。
}
●の部分に式や変数*、値を入れます。このプログラミング言語では、●の部分が0以外のときに真、0のときに偽となります。
よって、このプログラミング言語では、以下の場合に、●の部分が真となり、{}の中のプログラムが実行されます。
if(1){
}
int a = 5;
if(a > 3){
}
int a = 5;
if(a){
}
※intは、整数型
※a > 3は、比較演算子を用いた式
以下の場合は、●の部分が偽となり、{}の中のプログラムは実行されません。
if(0){
}
int a = 2;
if(a > 3){
}
int a = 0;
if(a){
}
あるプログラミング言語では、以下のelse文で●が偽のときに、任意のプログラムを実行できます。
if(●){
//●が真のときにこの中のプログラムが実行される。
}else{
//●が偽のときにこの中のプログラムが実行される。
}
あるプログラミング言語では、以下のelse if文で真偽の判定を行う部分を増やせます。
if(●){
//●が真のときにこの中のプログラムが実行される。
}else if(▲){
//●が偽で▲が真のときにこの中のプログラムが実行される。
}else{
//●と▲が偽のときにこの中のプログラムが実行される。
}
if文は、ハードウェアレベルでは、例えば、以下の仕組みで実現できます。
ここでは、以下のif文の仕組みを説明します。
if(●){
}else{
}
1. ●の値と0を比較命令で比較する。
2. ゼロフラグが1のときに条件を満たす条件分岐命令を実行する。
3. ●が真のとき、if文の{}の中のプログラムが実行される。そのプログラムの最後で無条件分岐命令でelse文をスキップする。
4. ●が偽のとき、ゼロフラグが1となるため、条件分岐命令により、else文の{}の中のプログラムが実行される。