朝7時。今日から日記を書く。さぼり防止のために。勉強時間も計る。
今日の内容はアセンブリ。
今日 5時間46分。
感想:
今日はrbpとrspの意味が分からなかったけど、ちょっとわかったような気がする。
raxは値を自分で入れるけど、rbpとrspはその命令を行ったメモリのアドレスが自動的に値として代入されるらしい。あとprintf("Hello World!")はlinuxの
write(1,"Hello World!",12)というシステムコールをやっているのと同じらしい。
write(端末の種類の識別子, 文字列, 文字数)。システムコールなしで直接ハードウェアに命令するのはOSのカーネルが禁止しているのでできないらしい。だからOSのカーネルにハードウェアとのやり取りを代わりにやってもらうのがシステムコールというものらしい。