X86彙編 求平方,輸入0 255,顯示結果

2021-04-28 07:14:02 字數 1617 閱讀 6712

;x86彙編_求平方,輸入0-255,顯示結果,並儲存到cube中,

; code segment

assume cs:code,ds:code

org 100h

start:

push cs

pop ds

again:lea dx,tips1

mov ah,9

int 21h ;顯示提示

xor bp,bp ;bp清0

mov cx,3

@in:mov ah,0

int 16h ;無回顯輸入

cmp al,1bh ;esc退出程式

jz quit

cmp al,0dh

jz show ;回車結束輸入

cmp al,'0'

jb @in

cmp al,'9';資料校驗

ja @in

mov ah,0eh

int 10h ;顯示有效輸入

and al,0fh

mov ah,0

xchg ax,bp

mov bl,10 ;bp×10

mul bl

add bp,ax ;bp+ax

loop @in

show:

cmp bp,256

jb q4

lea dx,cuowu

mov ah,9

int 21h

jmp quit

q4:

xor dx,dx

mov ax,bp

mul bp

mov dx,ax

mov cube,ax

push ax

mov al,'='

mov ah,0eh

int 10h

pop ax

call binidec

jmp start

quit:

mov ah,0

int 16h

mov ah,4ch

int 21h

tips1 db 0dh,0ah,'input(0-255),esc to quit: $'

cuowu db 'input error!$'

cube dw 0

binidec:

mov cx,10000d

call dec_div

mov cx,1000d

call dec_div

mov cx,100d

call dec_div

mov cx,10d

call dec_div

mov cx,1d

call dec_div

ret

dec_div:

mov ax,dx

mov dx,0

div cx

mov bx,dx

add al,30h

mov ah,0eh

int 10h

ret

code ends

end start

170824 彙編 x86基礎

a.1625 5 王子昂 總結 2017年8月24日 連續第325天總結 b.逆向知識 資料移動分為5種方式 立即數到暫存器 立即數到記憶體 暫存器到暫存器 暫存器到記憶體或記憶體到暫存器 記憶體到記憶體 前4種是所有現代體系都支援的,第五種是x86獨有的,可以通過inc add來直接操作記憶體 另...

X86彙編指令詳解

x86彙編基本分為七大體系 分別是 1 資料傳送指令 2 算術運算指令 3 邏輯運算指令 4 串操作指令 5 控制轉移指令 6 處理器控制指令 7 保護方式指令 先介紹資料傳送指令集 1 資料傳送指令 1.mov 格式 mov destination,source 功能 將s ource中的資料傳送...

x86彙編學習筆記

debug 是dos,windows都提供的實模式 8086 方式 程式的除錯工具.windows下使用dosbox模擬dos環境,掛載所在目錄後開啟debug.exe r指令 顯示r ax 0000 bx 0000 cx 0000 dx 0000 sp 00fd bp 0000 si 0000 d...