FORTRAN
2025.03.17
FORTRANも、いまでは一部しか知らない言語になりました。
自分は高校時代に習いました。(それっきりです)
中3の時、学校見学会だったか文化祭だったかで志望校を訪問する機会があり、そこで円周率の計算プログラム(FORTRAN)の展示を見かけて興味を持ちました。
数学が苦手なくせに、円周率には妙に興味を持っていて、あれこれ調べたりしていました。しかし、どうやって計算するのか当時まったく想像もつきませんでした。
要は、円周の長さを求めるにはどうするかという事で、多角形をどんどん細かくしていくわけです。
プログラムで多桁の数字を扱うにはどうすればよいかも当時は知らなくて、そのFORTRANプログラムを見て学びました。
当たり前といえばそうなんですが、桁を区切って扱うわけです。あとはRAMの許す限り、できるだけ大きな配列を確保します。
その配列ごとに桁上げ・借りを求めていくことで、多桁の計算を実現します。
たとえばZ80のアセンブラで、2バイトや4バイトの数を扱う時に1バイトずつ計算して、桁上げや借りを上位桁に反映していきますけど、同じようなことです。
RAM容量を超える部分をディスク等に書き出したり読み込んだりすれば、そういった外部記憶装置の容量しだいでもっと大きい桁も扱えるようになるけれど、その転送速度が課題となってきます。できるだけオンメモリで処理したいものです。
BASICの原型はFORTRANと聞いたことがあります。
いまでもFORTRANは科学計算などの分野では活躍しているようです。大学とか気象庁?
比較で <= > などの記号はFORTRAN77では使えなくて、.GT. .LE. .LT. .EQ. といった記号を使っていました。Greater Thanとか、Less Than、EQualの略でした。
円周率の計算式は色々あって(詳しくは専門の文献などを参照)、その中でもライプニッツの公式は最も簡単そうに見えたので最初にプログラムを組んでみたのですが、
これは収束がとても遅く、実用性がありません。かなり下の桁から相当な時間をかけて、じわじわ足し上がってくるイメージです。
これ以外に収束の早い式があります。但し、∑だの何だの書いてあって全く意味がわかりません。高校で習ったっけ。忘れた。なんとか展開だのなんとか級数だのサッパリです。
まあ、そのあたりで円周率に興味がなくなったのでした。
FORTRANはCP/M上のコンパイラが有り、過去に試した事がありました。F80というやつです。
F80でコンパイルして、M80でアセンブル、L80でリンクして実行形式(COM)にしました。
自分は高校時代に習いました。(それっきりです)
中3の時、学校見学会だったか文化祭だったかで志望校を訪問する機会があり、そこで円周率の計算プログラム(FORTRAN)の展示を見かけて興味を持ちました。
数学が苦手なくせに、円周率には妙に興味を持っていて、あれこれ調べたりしていました。しかし、どうやって計算するのか当時まったく想像もつきませんでした。
要は、円周の長さを求めるにはどうするかという事で、多角形をどんどん細かくしていくわけです。
プログラムで多桁の数字を扱うにはどうすればよいかも当時は知らなくて、そのFORTRANプログラムを見て学びました。
当たり前といえばそうなんですが、桁を区切って扱うわけです。あとはRAMの許す限り、できるだけ大きな配列を確保します。
その配列ごとに桁上げ・借りを求めていくことで、多桁の計算を実現します。
たとえばZ80のアセンブラで、2バイトや4バイトの数を扱う時に1バイトずつ計算して、桁上げや借りを上位桁に反映していきますけど、同じようなことです。
RAM容量を超える部分をディスク等に書き出したり読み込んだりすれば、そういった外部記憶装置の容量しだいでもっと大きい桁も扱えるようになるけれど、その転送速度が課題となってきます。できるだけオンメモリで処理したいものです。
BASICの原型はFORTRANと聞いたことがあります。
いまでもFORTRANは科学計算などの分野では活躍しているようです。大学とか気象庁?
比較で <= > などの記号はFORTRAN77では使えなくて、.GT. .LE. .LT. .EQ. といった記号を使っていました。Greater Thanとか、Less Than、EQualの略でした。
円周率の計算式は色々あって(詳しくは専門の文献などを参照)、その中でもライプニッツの公式は最も簡単そうに見えたので最初にプログラムを組んでみたのですが、
これは収束がとても遅く、実用性がありません。かなり下の桁から相当な時間をかけて、じわじわ足し上がってくるイメージです。
これ以外に収束の早い式があります。但し、∑だの何だの書いてあって全く意味がわかりません。高校で習ったっけ。忘れた。なんとか展開だのなんとか級数だのサッパリです。
まあ、そのあたりで円周率に興味がなくなったのでした。
FORTRANはCP/M上のコンパイラが有り、過去に試した事がありました。F80というやつです。
F80でコンパイルして、M80でアセンブル、L80でリンクして実行形式(COM)にしました。
COBOL
2025.03.17
COBOLなんて誰も興味ないと思う。自分も。(笑)
学校で習って、それ以来何十年も経過。もう忘れた。
あの頃は鉛筆とテンプレートでフローチャートを描き、それからコーディングシートという原稿用紙にプログラムを手書き、それを見ながら不便な端末から打ち込んでいた。
事務処理系の方でも理解しやすいように、英文のような記述になっていて、少々長ったらしい感じがする。
いまはフリーフォーマットだろうけど、昔はFORTRANと同じように書式が厳密で、何文字目から書き始めるとか、色々決まっていた。
COBOLの歴史は、レトロマイコンよりさらに古い世界。確かFORTRANの次ぐらいか?
だけど、世の中で未だに広く使われているのはCOBOLらしい。銀行や役所のシステムなど、膨大なCOBOL資産があるという。
動かなくなると困るのである。
いま学校などでプログラミング言語でCOBOLを教えているところは有るのだろうか? 無さそうな感じ。
COBOLって何に使うのか? ゲームを作ったりは、無い。
リアルタイムよりもバッチ処理向けで、データを揃えて実行すると結果が出てくるような使い方。
詳しくないがリアルタイム処理もたぶん有るのだろう。あいにく自分はCOBOLでのリアルタイム処理をやったことがない。
ゲームを作ろうと思えば、アイデア次第で何らかの形では実現できるかもしれないけど。
本来の目的は、さっきも書いたようにバッチ処理向け。給料の計算とか税金の計算とか、そんなところです。
動作環境は、いわゆるメインフレーム。昔のコンピュータのイメージ通り。いまの機種はスマートだろうけど、昔のはテープがぐるぐる回ってプリンタがジャージャー鳴りながら用紙を吐き出していた。
小学生の頃、県庁のコンピュータ室を外から見学したけど、まさにそれ。
そのメインフレーム(汎用機)も絶滅危惧種になりつつあるみたいです。
学校で習って、それ以来何十年も経過。もう忘れた。
あの頃は鉛筆とテンプレートでフローチャートを描き、それからコーディングシートという原稿用紙にプログラムを手書き、それを見ながら不便な端末から打ち込んでいた。
事務処理系の方でも理解しやすいように、英文のような記述になっていて、少々長ったらしい感じがする。
いまはフリーフォーマットだろうけど、昔はFORTRANと同じように書式が厳密で、何文字目から書き始めるとか、色々決まっていた。
COBOLの歴史は、レトロマイコンよりさらに古い世界。確かFORTRANの次ぐらいか?
だけど、世の中で未だに広く使われているのはCOBOLらしい。銀行や役所のシステムなど、膨大なCOBOL資産があるという。
動かなくなると困るのである。
いま学校などでプログラミング言語でCOBOLを教えているところは有るのだろうか? 無さそうな感じ。
COBOLって何に使うのか? ゲームを作ったりは、無い。
リアルタイムよりもバッチ処理向けで、データを揃えて実行すると結果が出てくるような使い方。
詳しくないがリアルタイム処理もたぶん有るのだろう。あいにく自分はCOBOLでのリアルタイム処理をやったことがない。
ゲームを作ろうと思えば、アイデア次第で何らかの形では実現できるかもしれないけど。
本来の目的は、さっきも書いたようにバッチ処理向け。給料の計算とか税金の計算とか、そんなところです。
動作環境は、いわゆるメインフレーム。昔のコンピュータのイメージ通り。いまの機種はスマートだろうけど、昔のはテープがぐるぐる回ってプリンタがジャージャー鳴りながら用紙を吐き出していた。
小学生の頃、県庁のコンピュータ室を外から見学したけど、まさにそれ。
そのメインフレーム(汎用機)も絶滅危惧種になりつつあるみたいです。
いまの小学校
2025.03.17
昭和と比べると大きく変わったのだろうか?全然わからない。
昭和の頃は体罰など普通に有り、保護者も「うちの子が言うことをきかなかったり悪さをしたらブン殴ってやってください」と先生にお願いするぐらい。
それが今では、授業中に抜け出して言うことを聞かない子たちを軽く叩いただけで懲戒処分になるという・・・
もはや、手を触れることも許されないのだろうかと。腫れ物に触るような感じ。
小学生に声をかけただけで通報されるご時世。
通学路があって、小学生と中学生が時間帯になるとたくさん通るが、向こうから挨拶されても返してよいか悩む。こんにちはと言われた、といって通報されたらたまらん。
だいたい、まっすぐ歩かないのは自分が子どもの頃と変わらない。なんかウロウロして、気になるものがあれば釘付けになり、行ったり来たり戻ったり、友達と集まってみたり、泣いたり、わけのわからない事を叫んだり、急に駆け出したり。
タブレットを使うようになったのは我々の頃と違う。そんなもの無かった。動画なんて無い。スライドかOHP、教室のテレビを見るぐらい。
水筒を下げている子をよく見かける。これはずいぶん昔からだけど、我々の頃は水筒なんて遠足ぐらいだった。
校内あちこちに蛇口が有った。(そして、ミカンの網袋に入ったレモン形のせっけんが吊ってあった)
ありがちだが、蛇口に直接に口をつけて飲もうとしたり、指で押さえて水を吹き出させたり、といったいたずらもあった。
身体測定の前に水をたくさん飲んでおこうとした事もあった。(いまでは逆だよ。体重測定があるからトイレに行ってできるだけ出しておこう)
今はケガでもすれば大騒ぎだが、当時は「ここは遊んでいい場所か」、「そういう遊びは危険だろ」、「お前が悪いんだ」とか言って「まず傷口を洗ってこい」、それから赤チンを塗るぐらい。
子どもの頃はしょっちゅうケガした。よく転んだし、友達とふざけていてガラスを割ったり、遊具で遊んでいて頭をぶつけた、切っちゃった、もう色々。
ゴミは焼却炉で燃やすのが当たり前で、当番が校舎裏の焼却炉にゴミを持ってきて放り込んでいた。
たまに鉛筆が混ざっていて、灰の中に鉛筆の芯があった。それに何か魅力を感じて時々持ち帰っていた。
予防接種の後なんか、注射器がそのまま焼却炉に放り込まれていて、針がついている物もあった。それを拾って遊ぶやつもいた。
子どもは、楽しいと思ったら夢中になってしまい、それが危なくても悪いことでもお構いなしということがよくある。(自分だけかも) そして最後に叱られておしまい。以後、その遊びはイカンと禁止令が出た、というパターンを何度繰り返したか。
口に水を含んで、上階からワッと吐き出すと、落下していく水が飛び散るのが楽しくて仕方なかった。そのうちに先生にかかって、誰だという事になり・・・
給食の牛乳のストローの包み紙、細長いやつだが、これを折りたたんで画鋲を刺す。ストローの紙が羽根みたいになって、投げるとくるくる回りながら落ちていく、その動きが面白い。
そして投げて壁に命中させる遊びかたもあった。これは大流行したが、危ないっていうので禁止。
今度は鉛筆を投げる奴が出始めた。(とどろけ!一番 かよ) そしてガラスを割ってしまったりけが人が出て、禁止令が・・・
(ろくでもない話ばかり思い出す)
昭和の頃は体罰など普通に有り、保護者も「うちの子が言うことをきかなかったり悪さをしたらブン殴ってやってください」と先生にお願いするぐらい。
それが今では、授業中に抜け出して言うことを聞かない子たちを軽く叩いただけで懲戒処分になるという・・・
もはや、手を触れることも許されないのだろうかと。腫れ物に触るような感じ。
小学生に声をかけただけで通報されるご時世。
通学路があって、小学生と中学生が時間帯になるとたくさん通るが、向こうから挨拶されても返してよいか悩む。こんにちはと言われた、といって通報されたらたまらん。
だいたい、まっすぐ歩かないのは自分が子どもの頃と変わらない。なんかウロウロして、気になるものがあれば釘付けになり、行ったり来たり戻ったり、友達と集まってみたり、泣いたり、わけのわからない事を叫んだり、急に駆け出したり。
タブレットを使うようになったのは我々の頃と違う。そんなもの無かった。動画なんて無い。スライドかOHP、教室のテレビを見るぐらい。
水筒を下げている子をよく見かける。これはずいぶん昔からだけど、我々の頃は水筒なんて遠足ぐらいだった。
校内あちこちに蛇口が有った。(そして、ミカンの網袋に入ったレモン形のせっけんが吊ってあった)
ありがちだが、蛇口に直接に口をつけて飲もうとしたり、指で押さえて水を吹き出させたり、といったいたずらもあった。
身体測定の前に水をたくさん飲んでおこうとした事もあった。(いまでは逆だよ。体重測定があるからトイレに行ってできるだけ出しておこう)
今はケガでもすれば大騒ぎだが、当時は「ここは遊んでいい場所か」、「そういう遊びは危険だろ」、「お前が悪いんだ」とか言って「まず傷口を洗ってこい」、それから赤チンを塗るぐらい。
子どもの頃はしょっちゅうケガした。よく転んだし、友達とふざけていてガラスを割ったり、遊具で遊んでいて頭をぶつけた、切っちゃった、もう色々。
ゴミは焼却炉で燃やすのが当たり前で、当番が校舎裏の焼却炉にゴミを持ってきて放り込んでいた。
たまに鉛筆が混ざっていて、灰の中に鉛筆の芯があった。それに何か魅力を感じて時々持ち帰っていた。
予防接種の後なんか、注射器がそのまま焼却炉に放り込まれていて、針がついている物もあった。それを拾って遊ぶやつもいた。
子どもは、楽しいと思ったら夢中になってしまい、それが危なくても悪いことでもお構いなしということがよくある。(自分だけかも) そして最後に叱られておしまい。以後、その遊びはイカンと禁止令が出た、というパターンを何度繰り返したか。
口に水を含んで、上階からワッと吐き出すと、落下していく水が飛び散るのが楽しくて仕方なかった。そのうちに先生にかかって、誰だという事になり・・・
給食の牛乳のストローの包み紙、細長いやつだが、これを折りたたんで画鋲を刺す。ストローの紙が羽根みたいになって、投げるとくるくる回りながら落ちていく、その動きが面白い。
そして投げて壁に命中させる遊びかたもあった。これは大流行したが、危ないっていうので禁止。
今度は鉛筆を投げる奴が出始めた。(とどろけ!一番 かよ) そしてガラスを割ってしまったりけが人が出て、禁止令が・・・
(ろくでもない話ばかり思い出す)
完全な乱数
2025.03.16
完全な乱数なんて有るのでしょうか?
たとえばMSX-BASICなどには乱数があります。これで簡単に乱数が得られると思うでしょう。
ところが、これは疑似乱数、算術乱数と呼ばれるものです。規則性を持っている、予想できるという意味で、完全な乱数ではありません。
MSX-BASICの内部は知りませんが、一般的な乱数ルーチンでは(簡単な例で)もとの数を5倍して+1する、といった具合に乱数を得ていますから、次の乱数が予想できるわけです。
シミュレーションの再現性という意味では、かえってそのほうが都合の良い場合もあるかもしれません。
インターバルタイマー(例えば1/60)で内部的にカウンタを回しておき、RND関数を呼び出した瞬間の値を拾ってそれを利用するとか。
中学生の頃、BASICでサイコロの確率のシミュレーションを行いました。サイコロを転がす回数が増えれば増えるほど1/6に近づいていきました。
学生の頃に友人がMSX上でSEGAのアーケード機のTETRISを再現しました。その時に、乱数について議論したのでした。
テトリミノは7種類あって、一方で我々が使っている乱数は2進数をベースにしているから、3bitだと0~7の値をとるから8種類、ひとつ余る。
0~6を(NEXTの)テトリミノに割り当てたとして、7が出た時は0~6が出るまで乱数の発生をやり直すか?
その場合の確率的には偏りがあるのか?
7が続けて何度も出るのではないか?
・・・などと議論しました。
そもそもSEGAのTETRISは乱数でNEXTを決めているのかどうかは知りません。我々は、おそらく乱数だろうと考えて作りました。根本的な部分です。
実際、棒ばかり続けて出る事もあったと思います。(あえてデバッグの為に、棒だけ出るようにして試した事もありました。全消しをするとボーナス点になるか確認するなど)
脱線しましたが、乱数を発生するサブルーチンは「Z80マシン語秘伝の書」に載っていたものを利用しました。結局、計算によって次の乱数を求めているので、完全にランダムとは言えないと思います。
その上で、さらに別の乱数を組み合わせて・・・などと考えたりもしましたが、結局どこかで規則性をもってしまいます。
もうひとつ別の乱数ルーチンがあって、その数字と足したり掛けたりして真ん中の1桁を取り出して・・・などと複雑にやっても、やはり規則性があるのです。
円周率をそのまま乱数列として使う、という案も聞いたことがあります。それはメモリ容量を食います。今の時代では問題にならないかも。
理想を求めれば物理乱数になりますが、さすがにCPUだけでは発生できません(発生機能を持っているCPUもあるかも。ここではZ80での話なので発生機能なし)。
古典的な手法では、ノイズ発生機を用いて作ります。そのノイズも、外乱の影響を受けないようにしたものでなければなりません。
Arduinoでは空きピンのアナログポートを読んで、その不定値を乱数あるいは乱数の種にするというのがありました。
パチンコやパチスロの乱数というか抽選は、高速で回るカウンタが有り、たとえばスタートレバーを叩いた瞬間にその値を取ることで得ています。たとえば7だったら当たりとか、いくつからいくつまでの範囲ならベルとか、リプレイとか決まっていました。
昔はその速度が体感器で対応できる程度の遅さだったので、当たりのタイミングを狙う事ができました。その対策として現在ではさらに高速で回しているようです。
そのカウンタだって昔は独立したIC(74HC590等)でしたから、不正に細工をして当たる仕組みなんかもありました。
見た目は普通だけれど、プレイしてみるとおかしいというのでICをはずしてみたら、その裏側をほじくって、8ピンPICマイコンが貼り付いていたりとか。こいつがカウンタを操作して当たらせていたわけです。
昔、ある装置の電源を入れるたびにランダムな値を得たいという要望がありました。
これもずいぶん悩みました。たとえば、電解コンデンサの充放電時間のばらつきを利用しようとしました。誤差が大きいだろうと予想したものの、それほど大きくはありませんでした。
他社製品ではバックアップRAMによって前回の値を覚えていて、それを乱数の種にしていたようです。(やはり計算で乱数を求めていたのでしょう。そのためには乱数の種が必要)
前回値無しで毎回ランダムというのは、簡単そうに思えるけど実際は難しいです。
じつはこれも体感器対策のひとつでした。遊技機の電源は開店前、同時に入れられるので全台同期します。従って、隣の台に移動しても体感器が使えてしまいます。
そこで、タイマーを使って電源ONのタイミングを秒単位でずらしていました。ブレーカーをONにしても、それぞれバラバラに入ります。
だけど毎回のずらし時間は固定されているし、1台ごとにタイマーを入れるにはコストがかかりますから数台まとめて同時にONしていました。(トランスは遊技機4台に1台といった割当なのでトランス1台ごとのタイマー)
そこで1台ずつランダムにずらして電源ONできないか、という話になりました。その後に抽選方式が変わったので、こういったものは不要になりました。
たとえばMSX-BASICなどには乱数があります。これで簡単に乱数が得られると思うでしょう。
ところが、これは疑似乱数、算術乱数と呼ばれるものです。規則性を持っている、予想できるという意味で、完全な乱数ではありません。
MSX-BASICの内部は知りませんが、一般的な乱数ルーチンでは(簡単な例で)もとの数を5倍して+1する、といった具合に乱数を得ていますから、次の乱数が予想できるわけです。
シミュレーションの再現性という意味では、かえってそのほうが都合の良い場合もあるかもしれません。
インターバルタイマー(例えば1/60)で内部的にカウンタを回しておき、RND関数を呼び出した瞬間の値を拾ってそれを利用するとか。
中学生の頃、BASICでサイコロの確率のシミュレーションを行いました。サイコロを転がす回数が増えれば増えるほど1/6に近づいていきました。
学生の頃に友人がMSX上でSEGAのアーケード機のTETRISを再現しました。その時に、乱数について議論したのでした。
テトリミノは7種類あって、一方で我々が使っている乱数は2進数をベースにしているから、3bitだと0~7の値をとるから8種類、ひとつ余る。
0~6を(NEXTの)テトリミノに割り当てたとして、7が出た時は0~6が出るまで乱数の発生をやり直すか?
その場合の確率的には偏りがあるのか?
7が続けて何度も出るのではないか?
・・・などと議論しました。
そもそもSEGAのTETRISは乱数でNEXTを決めているのかどうかは知りません。我々は、おそらく乱数だろうと考えて作りました。根本的な部分です。
実際、棒ばかり続けて出る事もあったと思います。(あえてデバッグの為に、棒だけ出るようにして試した事もありました。全消しをするとボーナス点になるか確認するなど)
脱線しましたが、乱数を発生するサブルーチンは「Z80マシン語秘伝の書」に載っていたものを利用しました。結局、計算によって次の乱数を求めているので、完全にランダムとは言えないと思います。
その上で、さらに別の乱数を組み合わせて・・・などと考えたりもしましたが、結局どこかで規則性をもってしまいます。
もうひとつ別の乱数ルーチンがあって、その数字と足したり掛けたりして真ん中の1桁を取り出して・・・などと複雑にやっても、やはり規則性があるのです。
円周率をそのまま乱数列として使う、という案も聞いたことがあります。それはメモリ容量を食います。今の時代では問題にならないかも。
理想を求めれば物理乱数になりますが、さすがにCPUだけでは発生できません(発生機能を持っているCPUもあるかも。ここではZ80での話なので発生機能なし)。
古典的な手法では、ノイズ発生機を用いて作ります。そのノイズも、外乱の影響を受けないようにしたものでなければなりません。
Arduinoでは空きピンのアナログポートを読んで、その不定値を乱数あるいは乱数の種にするというのがありました。
パチンコやパチスロの乱数というか抽選は、高速で回るカウンタが有り、たとえばスタートレバーを叩いた瞬間にその値を取ることで得ています。たとえば7だったら当たりとか、いくつからいくつまでの範囲ならベルとか、リプレイとか決まっていました。
昔はその速度が体感器で対応できる程度の遅さだったので、当たりのタイミングを狙う事ができました。その対策として現在ではさらに高速で回しているようです。
そのカウンタだって昔は独立したIC(74HC590等)でしたから、不正に細工をして当たる仕組みなんかもありました。
見た目は普通だけれど、プレイしてみるとおかしいというのでICをはずしてみたら、その裏側をほじくって、8ピンPICマイコンが貼り付いていたりとか。こいつがカウンタを操作して当たらせていたわけです。
昔、ある装置の電源を入れるたびにランダムな値を得たいという要望がありました。
これもずいぶん悩みました。たとえば、電解コンデンサの充放電時間のばらつきを利用しようとしました。誤差が大きいだろうと予想したものの、それほど大きくはありませんでした。
他社製品ではバックアップRAMによって前回の値を覚えていて、それを乱数の種にしていたようです。(やはり計算で乱数を求めていたのでしょう。そのためには乱数の種が必要)
前回値無しで毎回ランダムというのは、簡単そうに思えるけど実際は難しいです。
じつはこれも体感器対策のひとつでした。遊技機の電源は開店前、同時に入れられるので全台同期します。従って、隣の台に移動しても体感器が使えてしまいます。
そこで、タイマーを使って電源ONのタイミングを秒単位でずらしていました。ブレーカーをONにしても、それぞれバラバラに入ります。
だけど毎回のずらし時間は固定されているし、1台ごとにタイマーを入れるにはコストがかかりますから数台まとめて同時にONしていました。(トランスは遊技機4台に1台といった割当なのでトランス1台ごとのタイマー)
そこで1台ずつランダムにずらして電源ONできないか、という話になりました。その後に抽選方式が変わったので、こういったものは不要になりました。
寝ると腰が痛くなる原因
2025.03.15
朝起きた時、あるいは就寝中に腰が痛い。なぜだろう?
調べたり、試したりで分かってきた事・・・寝床に原因がありそうです。
横向きに寝る限り、腰は痛くなりません。
寝ている間、(寝返りしない限り)同じ姿勢を取り続けるので、肩や腰が痛くなるそうです。
起きている間の、たとえばデスクワークの姿勢には気をつけているつもりでしたが、寝る時までは全く考えていませんでした。
この安物のベッドはひょっとしたらひん曲がっているかもしれません。
どうも、腰のあたりが沈んでいるような気がします。
折りたたんだ毛布など挟んでみたら改善するかもしれません。
学生時代に使っていた安物のベッドは、腰のあたりからの発汗のせいか、そこだけ凹んでいました。あれは薄いベニヤ1枚のような代物だったので・・・
朝起きたら身体を動かし、寝ている間に凝り固まった身体をほぐしてやると良いかも?
調べたり、試したりで分かってきた事・・・寝床に原因がありそうです。
横向きに寝る限り、腰は痛くなりません。
寝ている間、(寝返りしない限り)同じ姿勢を取り続けるので、肩や腰が痛くなるそうです。
起きている間の、たとえばデスクワークの姿勢には気をつけているつもりでしたが、寝る時までは全く考えていませんでした。
この安物のベッドはひょっとしたらひん曲がっているかもしれません。
どうも、腰のあたりが沈んでいるような気がします。
折りたたんだ毛布など挟んでみたら改善するかもしれません。
学生時代に使っていた安物のベッドは、腰のあたりからの発汗のせいか、そこだけ凹んでいました。あれは薄いベニヤ1枚のような代物だったので・・・
朝起きたら身体を動かし、寝ている間に凝り固まった身体をほぐしてやると良いかも?