2009-05-16から1日間の記事一覧
memcpyをアセンブラで書くことにした memcpy: MOV EDI, [ESP + 4] MOV ESI, [ESP + 8] MOV ECX, [ESP + 12] memcpy_loop: MOV DL, [ESI] MOV [EDI], DL INC EDI INC ESI DEC ECX CMP ECX, 0 JA memcpy_loop RET これでいいんだろうか?アセンブラはよくわか…
memcpyを実装しようとしているのだがinvalid conversion from ‘void*’ to ‘char*’とコンパイラに怒られてしまう。char*に変換できなければバイト単位のアクセスができないんじゃないか?どうすればいいんだろう?
githubのsocket.rbをrecvfromを使ったものに置き換えた。パディングによるずれの問題も起こらないようなので良かった http://github.com/d-kami/packet-dump/blob/e6d377fa90c57afa3287922d216baac29341be8d/socket/socket.rb
readだと指定したバイトまで読み込んでいたけど、recvfromなら1フレーム毎に読み込んでくれたのでrecvfromを使うことにした。これなら、毎回フレームのサイズを気にしたり、パディングの問題を気にする必要もないので、楽ができる。最初からrecvformを使っ…