1.如何在80x86汇编语言里输出-1?,源码源码求解
2.è´1çåç åè¡¥ç
3.负1的原码和补码
如何在80x86汇编语言里输出-1?,源码求解
; -1 在计算机内部用补码表示,若是源码左手宝盒源码字节数 则为 FFh,若是源码飞鼠源码字 则为 FFFFh
CODE SEGMENT
ASSUME CS:CODE
X DW 0FFFFH
START: PUSH CS
POP DS
PUSH CS
POP ES
MOV AX,X
CALL DSPAXS
MOV AH,4CH
INT H
;==================================
; 输出有符号数,输出的源码quickfix源码数应放 ax中
DSPAXS PROC NEAR
PUSH AX
OR AX,AX
JNS @DSPAXS
NEG AX
PUSH AX
PUSH DX
MOV AH,2
MOV DL,'-'
INT H
POP DX
POP AX
@DSPAXS:
CALL DSPAX
POP AX
RET
DSPAXS ENDP
;===============================
DSPAX PROC NEAR
PUSH AX
PUSH BX
PUSH CX
PUSH DX
PUSHF
XOR CX,CX
MOV BX,
@DSPAX1:
XOR DX,DX
DIV BX
INC CX
OR DX,H
PUSH DX
CMP AX,0
JNE @DSPAX1
MOV AH,2
@DISPAX2:
POP DX
INT H
LOOP @DISPAX2
MOV DL,
INT H
POPF
POP DX
POP CX
POP BX
POP AX
RET
DSPAX ENDP
;================================
CODE ENDS
END START
è´1çåç åè¡¥ç
lzï¼å¾é«å ´åçæ¨çé®é¢ï¼æ£æ°çååè¡¥ä¸è´ï¼è´æ°çåç 为åç ååï¼è¡¥ç 为åç æ«å°¾å ä¸ï¼ä»è¡¥ç å°åç ï¼åååå 1ã
ä»¥å «ä½2è¿å¶ä½ä¸ºä¾ï¼
1
-1åç ï¼æé«ä½1表示è´æ°
1
-1åç ï¼é¤äºç¬¦å·ä½å ¶ä½å ¨é¨åå
1
-1è¡¥ç ï¼åç å 1
负1的原码和补码
-1的源码
-1的反码
-1的补码
正数的原码,补码,反码都相同,都等于它本身
负数的补码是:符号位为1,其余各位求反,末位加1
反码是:符号位为1,其余各位求反