「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典イメージぴよ画像「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典

オーバフロー

pointこの用語のポイント

point入れ過ぎちゃったよ

pointあふれちゃったよ

スポンサーリンク

簡単に書くよ

オーバフロー(英:overflow)とは

「いやんっ、あふれちゃった(*ノノ)」な状態のこと。
もう少し真面目ぶって書くと

「これより大きい数字は入れられないよ」な限界よりも大きい数字を入れようとして、おかしな状態になっちゃうこと
です。
あるいは

「これくらい入るかな~」と思って確保していた領域よりもたくさん入れちゃって、入りきらなかった状態のこと
です。


image piyo

詳しく書くよ

※個人的には「オーバーフロー」(「オーバ」ではなく「オーバー」)という言い方の方が馴染みがありますが、某・資格試験の過去問だと「バッファオーバーフロー」ではなく「バッファオーバフロー」のような形で出てくるのですね。そのため、用語検索で引っかかるようにするために取り上げておきます。

サクっと一言で説明すると

想定している量よりも多くて、あふれちゃった状態

が「オーバフロー」です。
主にプログラミングの分野で登場します。

オーバフロー

例えば、そうですね。
ここに数字が入る箱が ありました。

オーバフロー2

この箱は2桁の数字が入る箱です。
0~99の数字が入ります。

オーバフロー3

ところがどっこい、です。
間抜けなピヨ太君が「10×10」の計算結果をこの箱に入れようとしました。

オーバフロー4

「10×10」の計算結果は「100」です。
「100」は3桁です。
2桁の数字が入る箱には入りきりません。
案の定、箱に穴が開いてあふれてしまいました。

オーバフロー5

このような状態が「オーバフロー」です。
別名「桁あふれ」とも言われます。

数値型の変数(プログラミング世界における数字を入れておく箱)には最大値があります。
「これより大きい数字は入れられないよ」な限界があるのです。
プログラミング言語の種類によって限界の値は変わりますけどね。
いずれにせよ、何らかの限界はあります。

オーバフローは、その限界よりも大きな値を箱に入れようとしたときに起こる現象です。

……というのが本来の意味のオーバフローです。

実はプログラミングの世界には「バッファオーバフロー」という用語があります。
この「バッファオーバフロー」の省略表現として「オーバフロー」と言っている場合があります。

オーバフロー6

バッファは「データを一時的に溜めておく場所」です。
バッファオーバフローは

バッファ(データを溜めておく場所)がオーバフローした(あふれた)状態

を指す用語です。

せっかくなので、バッファオーバフローについて、もう少し詳しく説明しておきます。

プログラミングでは変数を扱います。
変数は「値を入れておく箱」です。
中に値を入れます。

オーバフロー7

この変数ですが、実際にはメモリ上に場所を確保します。
メモリの上に「ここからここまで、この変数が使うから」と値を入れておくための領域を確保するのです。

オーバフロー8

よく分からない方は花見の場所取りをイメージしてください。
場所を取るために下に敷いたブルーシートが変数です。
その上に座る上司や先輩、花見の参加者が値です。

花見の参加者が多くなると、ブルーシートに座りきれません。
ブルーシートの外にはみ出してしまうでしょう。
そうすると、隣で花見をしている人たちの迷惑になってしまうかもしれませんね。

コンピュータの世界も同じです。

例えば、3文字まで入る変数をメモリ上に確保したとしましょう。

オーバフロー9

そこに4文字以上入れると、入りきらない分があふれてしまいます。

オーバフロー10

もし隣の領域を他の変数が使っていたら、どうでしょう?

オーバフロー11

他の変数の値を書き換えてしまいますね。

オーバフロー12

これは本来想定していない事態です。
困ったことになる可能性が高いでしょう。

このような

元々確保していた領域よりも大きい値を入れて、あふれちゃった状態

がバッファオーバフローです。
そして「バッファオーバフロー」の省略表現として「オーバフロー」と言っている場合があります。

オーバフロー13

とはいえ、似たようなものですけどね。
「オーバフロー」と出てきたら

許容されている量よりもたくさん入れちゃって、あふれた状態

と読み替えてください。
それで何となくの意味は、つかめると思います。


image piyo2

一言でまとめるよ

まぁ「オーバフロー」って単語が出てきたら「あふれちゃったんだな~」と お考えください。

一番上に戻るよ
スポンサーリンク
書籍画像019
書籍画像077

おまけ

■訳してみるよ

「overflow(オーバフロー)」の意味は

・あふれる
・氾濫する


とかです。




書籍画像
わわわ説明術コラム
宣伝だよ
「分かった!」と思わせる説明の技術 知識ゼロの相手にも伝わるようになる本【Audible】
「技術書」の読書術 達人が教える選び方・読み方・情報発信&共有のコツとテクニック
タヌキとキツネ