2006-02-06から1日間の記事一覧

数とかデータとか

n進数表記方法 2進数は後ろにBをつける 10B 8進数は前に0(数字)をつける、あるいは後ろにO(アルファベット)かQをつける 010 10o 10Q 10進数は後ろにDをつける 10D 16進数は前に$か0xをつける、あるいは後ろにHをつける $10 0x10 10h 2進化10進数(Binary-Cod…

PUSHとPOP

ソースコード.無意味に32bitレジスタ使ってます. ; PushPop.asm mov eax, 0x00000200 mov edx, 0x00000065 ; char='e' push edx mov edx, 0x00000067 ; char='g' push edx mov edx, 0x0000006F ; char='o' push edx mov edx, 0x00000068 ; char='h' int 0x…

jump命令による無限ループ

; jmp.ams bits 16 org 0x100 mov ax, 0x0200 mov dx, 0x0040 ; char='@' int 0x21 jmp 0x100アセンブルして実行すると"@@@@@@@@@@....@@@"の嵐.ctrl+cで強制終了可.不思議なのは,バイナリコードを見ても先頭にあると思われた"bits 16"や"org 0x100"と思…

カウンタを使ったループ処理

今年のNFLスーパーボールは,ピッツバーグの勝ち.Seattle SeaHowksは残念ながら負けてしまいました.スコアは21-10かな. アセンブリコード ;loop.asm bits 16 org 0x100 mov ah, 0x09 mov dx, msg mov cx, 0x3 doit: int 21h loop doit mov ax, 0x4C00 int…

スタックを用いたサブルーチンへの引数渡し

アセンブリコード ; subcall.asm ; ; サブルーチンにスタックを使用してパラメータを渡す ; void subRoutine(char, char)といったところか bits 16 org 0x100 mov ax, 0x0200 ; これはグローバルにアクセス可能とする mov bx, 0x41 ; パラメータその1 mov cx…