汇编语言中二进制转换成八进制,十六进制的原理解释,就是左移几位,还有什么循环几位什么的 汇编语言输入4位十进制转换二进制,八进制,十六进制并以表格一...
\u8ba1\u7b97\u673a\u539f\u7406\u4ece\u4e8c\u8fdb\u5236\u5230\u5341\u516d\u8fdb\u5236\u7684\u6240\u6709\u8f6c\u6362\u8bf4\u7684\u53d63\u4f4d4\u4f4d\u5e94\u8be5\u662f\u6307\u4e8c\u8fdb\u5236\u8f6c\u5316\u4e3a\u516b\u8fdb\u5236\u548c\u5341\u516d\u8fdb\u5236\u5427\uff0c\u56e0\u4e3a\u4e00\u4e2a\u516b\u8fdb\u5236\u7684\u6570\u53ef\u4ee5\u7531\u4e09\u4f4d\u4e8c\u8fdb\u5236\u7684\u6570\u6765\u8868\u793a\uff0c\u5982111\uff082\uff09\u53ef\u4ee5\u8868\u793a\u4e3a7\uff088\uff09\uff0c\u6240\u4ee5\u53ef\u4ee5\u76f4\u63a5\u5c06\u4e8c\u8fdb\u5236\u65703\u4f4d\u4e00\u53d6\u8f6c\u5316\u4e3a\u76f8\u5e94\u76848\u8fdb\u5236\u6570\uff0c\u598211011\uff082\uff09\u7684\u8bdd\uff0c\u5c31\u53ef\u4ee5\u540e\u9762\u5f00\u59cb\u5f80\u524d011\uff082\uff09\u53d8\u62103\uff088\uff09,11\uff082\uff09\u53d8\u62103\uff088\uff09\uff0c\u654511011\u5f62\u5f0f\u7684\u4e8c\u8fdb\u5236\u6570\u5c31\u88ab\u8f6c\u5316\u4e3a\u4e86\u516b\u8fdb\u5236\u768433\u3002\u5341\u516d\u8fdb\u5236\u540c\u7406\uff0c\u53ea\u4e0d\u8fc7\u53d8\u6210\u75314\u4f4d\u4e8c\u8fdb\u5236\u6570\u3002\u5f53\u7136\u7531\u516b\u8fdb\u5236\u548c\u5341\u516d\u8fdb\u5236\u8f6c\u5316\u4e3a\u4e8c\u8fdb\u5236\u4e5f\u53ef\u4ee5 \u7528\u76f8\u540c\u7684\u529e\u6cd5\u3002
CODE SEGMENT ASSUME CS:CODE BUFF DB 6,?,6 DUP(?) START: PUSH CS POP DS PUSH CS POP ES @0: LEA DX,BUFF MOV AH,10 INT 21H CALL LFCR LEA SI,BUFF ADD SI,2 CLD MOV DX,0 @1: LODSB CMP AL,13 JE @2 CMP AL,'0' JB @0 CMP AL,'9' JA @0 AND AL,0FH MOV AH,0 SHL DX,1 MOV CX,DX SHL DX,1 SHL DX,1 ADD DX,CX ADD DX,AX JMP @1 @2: MOV AX,DX MOV BX,2 CALL DSPAX MOV BX,8 CALL DSPAX MOV BX,16 CALL DSPAX MOV AH,4CH INT 21H;================================ DSPAX PROC NEAR PUSH AX PUSH BX PUSH CX PUSH DX PUSHF XOR CX,CX ; MOV BX,10 @DSPAX_1: XOR DX,DX DIV BX INC CX OR DX,30H PUSH DX CMP AX,0 JNE @DSPAX_1 MOV AH,2 @DISPAX_2: POP DX CMP DL,3AH JB @DISPAX_3 ADD DL,7 @DISPAX_3: INT 21H LOOP @DISPAX_2 MOV DL,32 INT 21H POPF POP DX POP CX POP BX POP AX RET DSPAX ENDP;================================ LFCR: PUSH AX PUSH DX MOV AH,2 MOV DL,13 INT 21H MOV DL,10 INT 21H POP DX POP AX RET;================================= CODE ENDS END START
实际上计算机里面的都是二进制。要转换为其他进制,其实是以一个2#数转换为相应的字符串然后输出。巧合的是4位2#正好对应1位16#,因为2^4=16,8#同理,所以可以用移位实现一位一位的转换,也就是产生一个一个的字符。那么为什么要移位?直接转换不更好?问题程序设计就是这样一个东西,一种顺序,选择,循环结构的工作去“简化”(也可以说计算机化,因为这样计算机会比较方便,特别是循环)。
所以(16#)算法是这样的把最高位的4位移到最右边,也就是算数左移4位。然后将这个数变成相应16#数的asii码,然后输出该字符,然后重复,直到所有的字符都转换完毕。代码书上有吧,就不给了。(8#同理)
绛旓細瀹為檯涓婅绠楁満閲岄潰鐨勯兘鏄簩杩涘埗銆傝杞崲涓哄叾浠栬繘鍒讹紝鍏跺疄鏄互涓涓2#鏁拌浆鎹负鐩稿簲鐨勫瓧绗︿覆鐒跺悗杈撳嚭銆傚阀鍚堢殑鏄4浣2#姝eソ瀵瑰簲1浣16#锛屽洜涓2^4=16,8#鍚岀悊锛屾墍浠ュ彲浠ョ敤绉讳綅瀹炵幇涓浣嶄竴浣嶇殑杞崲锛屼篃灏辨槸浜х敓涓涓竴涓殑瀛楃銆傞偅涔堜负浠涔堣绉讳綅锛熺洿鎺ヨ浆鎹笉鏇村ソ锛熼棶棰樼▼搴忚璁″氨鏄繖鏍蜂竴涓笢瑗匡紝涓绉嶉『搴忥紝...
绛旓細1銆佸崄杩涘埗杞叾浠栬繘鍒舵垨鑰呭叾浠栬繘鍒惰浆鍗佽繘鍒锛氬崄杩涘埗鏁伴櫎R鍙栦綑娉曪紝鍗冲崄杩涘埗鏁伴櫎R锛屼綑鏁颁负鏉冧綅涓婄殑鏁帮紝寰楀埌鐨勫晢鍊肩户缁櫎R锛屼緷姝ゆ楠ょ户缁悜涓嬭繍绠楃洿鍒板晢涓0涓烘銆傛渶鍚庤鏁版椂锛屼粠鏈鍚庝竴浣嶈璧枫傚叾浠栬繘鍒惰浆鍗佽繘鍒讹紝鎶婂叾浠栬繘鍒舵暟鎸夋潈灞曞紑鐩稿姞鍗冲緱鍗佽繘鍒舵暟銆2銆佷簩杩涘埗杞叓杩涘埗锛3浣嶄簩杩涘埗鏁版寜鏉冨睍寮鐩稿姞寰...
绛旓細浜岃浆鍏繘鍒讹細灏嗕簩杩涘埗鏁扳滀粠鍙冲悜宸︼紝涓変綅涓缁勨濓紝鍐嶅皢鍚勭粍璁$畻缁撴灉鍙緱8杩涘埗鏁 浜岃浆鍗佸叚杩涘埗锛氬皢浜岃繘鍒舵暟鈥滀粠鍙冲悜宸︼紝鍥涗綅涓缁勨濓紝鍐嶅皢鍚勭粍璁$畻缁撴灉鍙緱16杩涘埗鏁 鍗佽浆N杩涘埗锛氶噰鐢ㄩ櫎N鍙栦綑娉曪紙鍚岃浆浜岃繘鍒讹級
绛旓細绗竴绉嶏細浠栦滑涔嬮棿鐨勮浆鎹㈠彲浠ュ厛杞垚浜岃繘鍒剁劧鍚庡啀鐩镐簰杞崲銆傜浜岀锛氫粬浠箣闂寸殑杞崲鍙互鍏堣浆鎴愬崄杩涘埗鐒跺悗鍐嶇浉浜掕浆鎹備緥濡備竴涓崄鍏繘鍒舵暟053977锛屽皢鍏惰浆鎹㈡垚浜岃繘鍒001 010 011 100 101 110 111锛屽啀灏嗚浜岃繘鍒惰浆鎹负鍏繘鍒讹紝鍙緱鍏繘鍒舵暟涓1234567銆
绛旓細1銆佸叓杩涘埗鍒颁簩杩涘埗杞崲锛氳灏嗗叓杩涘埗杞崲涓轰簩杩涘埗锛岃灏嗘瘡涓叓杩涘埗鏁板瓧鏇挎崲涓哄叾浜岃繘鍒惰〃绀銆2銆佷簩杩涘埗鍒板叓杩涘埗杞崲锛氳杩囩▼涓庝箣鍓嶇殑绠楁硶鐩稿弽銆備簩杩涘埗鏁板瓧鎸変笁浣嶅垎缁勶紝浠庢渶浣庢湁鏁堜綅寮濮嬶紝鍚戝乏鍜屽悜鍙宠繘琛屻傚鏈夊繀瑕侊紝娣诲姞鍓嶅闆讹紙鎴栧皬鏁扮偣鍙充晶鐨勫熬闅忛浂锛変互濉啓鏈鍚庝竴缁勪笁涓傜劧鍚庣敤绛夋晥鐨勫叓杩涘埗鏁板瓧鏇挎崲...
绛旓細鐢ㄦ槸姹囩紪鎴栬呴珮绾ц瑷缂栧啓绋嬪簭鐨勶紝杩欎簺閮芥槸鎸囦护鐨勮〃寮忓舰寮忕劧鍚庣敱缂栬瘧杞欢缈昏瘧鎴浜岃繘鍒鐨勩傝鍏繘鍒鎴栬鍗佸叚杩涘埗灏辨槸浜岃繘鍒剁殑涓绉嶇畝鐭殑琛ㄥ紡褰㈠紡锛屽洜涓轰簩杩涘埗琛ㄧず澶夯鐑︿簡锛屽張鎵嶏紝涓嶆槗浜轰滑闃呰鍜岃蹇嗭紝涔﹀啓涓嶆柟渚匡紝鎵浠ュ氨鏈夊悗闈㈢殑杩涘埗鏉ヨ〃绀猴紝涓嶈繃鐜板湪鍒汉鐢ㄩ珮绾ц瑷浜嗐傝屽叓杩涘埗 0鑷7 8涓暟鐮侊紝鍩烘暟鏄...
绛旓細鐢╟ 璇█濡備笅:include "stdio.h"include "string.h"main(){int i=0,a,b[80];scanf("%d",&a);while(a){b[i]=a%8;a/=8;i++;} i--;for(;i>=0;i--)printf("%d",b[i]);printf("\n");} 杩欎笉鏄敮涓绛旀.甯屾湜瀵逛綘鏈夊府鍔!!!
绛旓細10 INT 21H CALL LFCR LEA SI,BUFF ADD SI,2 CLD MOV DX,0 @1: LODSB CMP AL,13 JE @2 CMP AL,'0' JB
绛旓細鍏繘鍒跺箍娉涘簲鐢ㄤ簬璁$畻鏈虹郴缁燂紝濡侾DP-8锛孖CL 1900鍜孖BM澶у瀷鏈轰娇鐢12浣嶃24浣嶆垨36浣嶃鍏繘鍒朵负杩欎簺鍩虹锛屽洜涓轰粬浠殑鏈鐞嗘兂鐨勪簩杩涘埗瀛楃缉鍐欏ぇ灏忚兘琚3鏁撮櫎锛堟瘡涓叓杩涘埗鏁板瓧浠h〃涓変釜浜岃繘鍒舵暟瀛楋級銆傚洓銆佸叓鍒板崄浜屼釜鏁板瓧鍙互绠鏄庡湴鏄剧ず鏁翠釜鏈哄櫒锛屼篃闄嶄綆鎴愭湰浣垮緱鏁板瓧鍏佽閫氳繃鏁扮爜绠★紝涓冩鏄剧ず鍣紝鍜岃绠楀櫒鐢ㄤ簬鎿嶄綔...
绛旓細涓绉嶆槸鎵嬪伐鏌ヨ〃杩涜杞崲,鎵惧埌閽堝CPU鐨勬眹缂栫爜鐨勪功,鏍规嵁姹囩紪璇彞鏌ュ搴旂殑鏈哄櫒鐮併傚彟涓绉嶄竴绉嶆槸鐢ㄧ紪璇戣蒋浠,瀵瑰簲浜嶺86鐨,鏈堿SM绋嬪簭鍙互缂栬瘧姹囩紪绋嬪簭,瀵瑰簲S51,涔熸湁涓撻棬鐨勬眹缂栫紪璇戠▼搴廥86绯荤粺濡傛灉鏄皯閲忕殑鐢―EBUG杞欢,鍙互瀹炵幇鐢ㄥ叾涓殑A鍛戒护,杈撳叆姹囩紪璇彞鐒跺悗鐢―鍛戒护灏卞彲浠ョ湅鍒16杩涘埗鐨勬満鍣ㄧ爜 鏈洖绛旂敱鐢佃剳缃戠粶鍒嗙被杈句汉 ...