Rubyで複素数1次元配列の信号をdatファイル出力したいのですが方法がわかりません.

どなたかご教授お願い致します

例えば以下のような信号をバイナリ形式のdatファイルで出力したい

signal = [Complex(0.01111, -0.22222), Complex(0.0321, 0.0006), Complex(0.43, -0.4421)]

datファイルに出力することで,datファイルから読み取るときに書き込みと読み込み前後で同様の信号が得られるようにしたいです.Complex の内容はIEEE 754の浮動小数点数と思っても大丈夫です.