汇编语言将二进制转化为十六进制的功能 ,解释下列代码每一句在二进制转化为十六进制中起到什么作用 汇编语言 编程将二进制数转换为16进制数并显示的功能
\u6c47\u7f16\u8bed\u8a00\uff0c\u5c06\u7ed9\u51fa\u7684\u5341\u516d\u8fdb\u5236\u6570\u636e\u8f6c\u6362\u6210\u4e8c\u8fdb\u5236\u6570\u636e\uff0c\u6c42\u4ee3\u7801\u53c2\u8003\uff1a
http://hi.baidu.com/do_sermon/item/83673176f6561417d0dcb384
\u8f6c\u53161\u4e2a\u6570\u4e3aR\u8fdb\u5236\u5b57\u7b26\u4e32\u3002
\u5b57\u7b26\u4e32\u8868\u793a\uff0c\u91c7\u7528\u9664r\u53d6\u4f59\u6cd5,\u91cd\u590d\u7684\u8ba1\u7b97n
%
r\u7684\u4f59\u6570\u548cn/r\u7684\u5546\uff0c\u4f9d\u6b21\u5f97\u5230R\u8fdb\u5236\u7684\u5404\u4e2a\u5b57\u7b26\uff0c\u503c\u5f97\u6ce8\u610f\u7684\u662f\uff0c\u5f97\u5230\u7684R\u8fdb\u5236\u7684\u5404\u4e2a\u5b57\u7b26\u987a\u5e8f\u662f\u4ece\u4f4e\u4f4d\u5230\u9ad8\u4f4d\uff0c\u8fd9\u548c\u6211\u4eec\u5e73\u65f6\u4e66\u5199\u7684\u987a\u5e8f\u662f\u76f8\u53cd\u7684,\u4e3a\u4e86\u548c\u4e66\u5199\u987a\u5e8f\u4fdd\u6301\u4e00\u81f4\uff0c\u5728\u6700\u540e\u9636\u6bb5\u9700\u8981\u5c06\u5b57\u7b26\u4e32\u9996\u5c3e\u4ea4\u6362\u3002
\u6b65\u9aa41:
\u5c06\u7f13\u51b2\u533a\u9996\u5730\u5740p\u548chead
\u6b65\u9aa42:
c\u53d6n\u9664\u4ee5r\u7684\u4f59\u6570\uff0c\u5373c=n
%
r
\u5c06c\u5b58\u5165p\u5904
p\u524d\u8fdb\u4e00\u4e2a\u4f4d\u7f6e\uff0c
\u5373p=p+1;
n\u53d6n\u9664\u4ee5r\u7684\u5546\uff0c
\u5373n=n/r;
\u6b65\u9aa43:
\u5982\u679cn\u5927\u4e8e0\uff0c\u7ee7\u7eed\u91cd\u590d\u6267\u884c\u6b65\u9aa42
\u6b65\u9aa44\uff1a
\u5c06\u5b57\u7b26\u4e32\u5012\u7f6e\uff0c\u5373\u672b\u5b57\u7b26\u548c\u7b2c1\u4e2a\u5b57\u7b26\u4ea4\u6362\uff0c\u5012\u6570\u7b2c2\u4e2a\u5b57\u7b26\u548c\u7b2c2\u4e2a\u5b57\u7b26\u4ea4\u6362\uff0c\u4f9d\u6b21\u7c7b\u63a8\u3002
ASSUME CS:A1
START: PUSH DS
SUB AX,AX
PUSH AX
MOV BX,0110 1101 0011 0111B ;6D37H
MOV CH,4
B1: MOV CL,4
ROL BX,CL ;将BX中的数循环左移4位,也就是把BX最高4位,放到BX的最低4位上去。
MOV AL,BL ;将低8位放入AL
AND AL,0FH ;取低4位
ADD AL,30H ;加上30H 从这里开始将4位二进制数转成16进制ASCII码,
;0--的ASCII码是30H…9是39H,A是41H,B是42H…F是46H
CMP AL,3AH ;加结果是不是少于3A
JL B2 ;是的话,表示是0-9之中数
ADD AL,7H ;否则还要加上7,变成对应的A或B、C、D、E、F
B2: MOV DL,AL ;AL是转换好的一位16进制数的ASCII码
MOV AH,2
INT 21H ;显示到屏幕
DEC CH
JNZ B1 ;因为BX中其有4位16进制数,所以要处理4次。这里是判断处理完4次没,如果没有,就继续处理下一个数
RET
MAIN ENDP
A1 ENDS
END START
这个程序的功能是将BX中的0110 1101 0011 0111B(6D37H)以16进制显示在屏幕上。
“显示在屏幕”的准确说法是:输出到系统标准控制台上。
不知道我说清楚没,希望能帮到你
在计算机里面,二进制和16进制,是等效的,不需要转换。
也不可能转换。
可以发生变化的,只有显示。
MAIN PROC FAR
承担CS:A1
START:PUSH DS
SUB AX,AX
的PUSH AX
MOV BX,0110 1101 0011 0111乙; 6D37H MOV CH,4
ROL BX,CL B1:MOV CL,向左旋转BX四,这是BX,BX最高4,最低的4最多。
MOV AL,BL低8到AL
AL,0FH;低4
ADD AL,30H 30H耦合的4位二进制数,从这里到十六进制的ASCII代码 BR /> - ASCII码30H ... 9 39H,A是41H,B是42H ... F 46H
CMP AL,3AH增加的结果是不低于3A
JL B2;,那么,这是0-9之间
ADD AL,7H,否则加7,进相应的A或B,C,D,E,F
B2:MOV DL,AL,AL MOV AH是一个十六进制数转换好的ASCII代码
INT 21H;显示在屏幕上
DEC CH
的JNZ B1 BX是4个十六进制数,所以要处理的四倍。这里是判断完没有,如果没有,继续处理下一个数字
RET
MAIN ENDP
A1
END结束的开始
这个程序的功能是BX 0110 1101 0011 0111 B(6D37H)以十六进制显示在屏幕上。准确的说法是:
“显示在屏幕上”输出到系统的标准控制台上。
不认识我,显然没有,我希望你能帮助
绛旓細85: 01010101 55H -85:10101011 0ABH 76: 01001100 4CH -76:10110100 0A4H (-85)-76=(-85)+(-76)=AB+A4=14F ...婧㈠嚭 琛ョ爜鍋氬噺娉曟椂鏄杞寲涓鍔犳硶鏉ュ仛鐨勶紝瀵瑰簲鐨鍗佸叚杩涘埗鐩存帴杞崲鍗冲彲
绛旓細AND DL,0FH ;姣忔鍙栦綆鍥涗綅锛屾潵琛ㄧず涓涓鍗佸叚杩涙暟 ADD DL,30H ;杞寲鎴愪负ASSIC鐮 CMP DL,3AH ;鍒ゆ柇DL鏄惁澶т簬10鐨凙SSIC鐮侊紙A+30H锛塉B NEXT ADD DL,7 ;澶т簬10鍐嶅姞涓7 NEXT: MOV AH,2 INT 21H DEC CH JNZ LOP MOV DX,OFFSET STR MOV AH,9 INT 21H MOV AH,4CH INT 21H ...
绛旓細10 CALL DSPAXX CALL LFCR MOV BX,16 CALL DSPAXX CALL LFCR MOV BX,2 CALL DSPAXX MOV AH,4CH INT 21H;=== INPUT
绛旓細姹囩紪鎸囦护濡備綍杞崲涓轰簩杩涘埗鎴栬鍗佸叚杩涘埗?ciolop |涓炬姤 鎴戞湁鏇村ソ鐨勭瓟妗堟帹鑽愪簬2016-10-23 08:55:22 鏈浣崇瓟妗 涓绉嶆槸鎵嬪伐鏌ヨ〃杩涜杞崲,鎵惧埌閽堝CPU鐨勬眹缂栫爜鐨勪功,鏍规嵁姹囩紪璇彞鏌ュ搴旂殑鏈哄櫒鐮併傚彟涓绉嶄竴绉嶆槸鐢ㄧ紪璇戣蒋浠,瀵瑰簲浜嶺86鐨,鏈堿SM绋嬪簭鍙互缂栬瘧姹囩紪绋嬪簭,瀵瑰簲S51,涔熸湁涓撻棬鐨勬眹缂栫紪璇戠▼搴廥86绯荤粺濡傛灉鏄皯閲忕殑鐢...
绛旓細瀹為檯涓婅绠楁満閲岄潰鐨勯兘鏄浜岃繘鍒銆傝杞崲涓哄叾浠栬繘鍒讹紝鍏跺疄鏄互涓涓2#鏁拌浆鎹负鐩稿簲鐨勫瓧绗︿覆鐒跺悗杈撳嚭銆傚阀鍚堢殑鏄4浣2#姝eソ瀵瑰簲1浣16#锛屽洜涓2^4=16,8#鍚岀悊锛屾墍浠ュ彲浠ョ敤绉讳綅瀹炵幇涓浣嶄竴浣嶇殑杞崲锛屼篃灏辨槸浜х敓涓涓竴涓殑瀛楃銆傞偅涔堜负浠涔堣绉讳綅锛熺洿鎺ヨ浆鎹笉鏇村ソ锛熼棶棰樼▼搴忚璁″氨鏄繖鏍蜂竴涓笢瑗匡紝涓绉嶉『搴忥紝...
绛旓細.model small.codestart: mov al,2DH mov ch,2 mov cl,4 mov ah,2 mov bl,alp0: rol bl,cl mov dl,bl and dl,0fh cmp dl,9 jbe p1 add dl,7p1: add dl,30h int 21h dec ch jnz p0 mov ah,4ch int 21hend start ...
绛旓細2011-05-04 鍦51鍗曠墖鏈轰腑,浣跨敤姹囩紪璇█,濡備綍灏嗗崄鍏杩涘埗鏁拌浆鎹㈡垚鍗佽繘鍒躲 23 2008-02-25 缂栧啓浠g爜鐢姹囩紪璇█灏BCD鐮杞寲涓哄崄鍏繘鍒鏁 1 2012-02-29 缂栧啓涓姹囩紪璇█绋嬪簭,瑕佹眰浠庨敭鐩樻帴鏀朵竴涓洓浣嶇殑鍗佸叚杩涘埗鏁,骞跺湪... 16 2011-11-08 姹囩紪璇█棰樼洰:灏嗕竴涓暟鐢ㄥ崄杩涘埗鍜屽崄鍏繘鍒舵樉绀 2 2009-01-21 姹...
绛旓細C璇█ 鍗佸叚杩涘埗涓:0xA1 鍗佽繘鍒朵负:161 浜岃繘鍒涓:10100001B 姹囩紪璇█ 鍗佸叚杩涘埗涓:#0A1H 鍗佽繘鍒朵负:#161 浜岃繘鍒朵负:10100001B
绛旓細;鍗佽繘鍒惰浆鎹负浜岃繘鍒剁殑杩囩▼锛;鍒濆鍖栵細鍋囪绗竴娆¤緭鍏ュ墠鐨勮緭鍏ヤ负0 ;瀵逛簬姣忔杈撳叆锛屽皢鍓嶉潰杈撳叆鐨勫悇浣嶅潎鎻愬崌涓浣嶏紝鍗崇櫨浣嶅彉鍗冧綅锛屽崄浣嶅彉鐧句綅锛屼釜浣嶅彉鍗佷綅锛岀劧鍚庡綋鍓嶇殑杈撳叆濉埌涓綅锛岄噸澶嶈姝ユ搷浣滅洿鍒伴亣鍒板洖杞︾ ;浜岃繘鍒惰浆鎹负鍗佸叚杩涘埗锛;鍥犱负姣4涓簩杩涘埗浣嶅彲浠ョ敱1涓崄鍏繘鍒朵綅琛ㄧず锛屾墍浠ヤ緷娆″彇鍑4涓簩...
绛旓細鍏跺疄浣犱笉闇瑕杞崲鐨勶紝涔嬫墍浠ヨ鈥滆浆鎹⑩濆嚭鏉ユ槸渚涚粰浜虹湅鐨勩傝绠楁満閲岄潰閮芥槸浠浜岃繘鍒瀛樺偍鐨勶紝浣犵敤搴旂敤杞欢鎻愬彇鍑烘潵鐨勯兘鏄互鍗佸叚杩涘埗琛ㄨ堪鐨勬暟鎹備綘鐪嬬湅濡備笅涓滀笢锛歮ov a,#10000000B mov a,#80H mov a,#128 绗竴涓槸浜岃繘鍒讹紝绗簩涓槸鍗佸叚杩涘埗锛岀涓変釜鏄崄杩涘埗銆傜洿鎺ヨ祴鍊煎氨鍙互浜嗐