汇编语言怎样实现ASCII码转换为二进制数

题目:将两个二进制数转换为二进制数码的ASCII码。
调用程序与子程序之间的任务分工是:调用程序提供待转换的数据,数据位数(8位,16位)和转换后存放ASCII码的首址等三个参量的地址,子程序完成二进制数的ASCII码转换。
-----------------------------------------------------------
DATA
SEGMENT
BIN1
DB
35H
BIN2
DW
0AB48H
NUM
DB
8,16
ASCBUF
DB
20H
DUP(0)
TABLE
DW
3
DUP(0)
DATA
ENDS
.....
COSEG
SEGMENT
...
MOV
TABLE,OFFSET
BIN1
MOV
TABLE+2,OFFSET
NUM
MOV
TABLE+4,OFFSET
ASCBUF
MOV
BX,OFFSET
TABLE
CALL
BINASC8
...
MOV
TABLE,OFFSET
BIN2
MOV
TABLE+2,OFFSET
NUM+1
MOV
TABLE+4,OFFSET
ASCBUF+10H
MOV
BX,OFFSET
TABLE
CALL
BINASC16
--------------------------------------------------------------
--------------------------------------------------------------
子程序如下:
BINASC
PROC
BINASC8:
MOV
DI,[BX]
MOV
DH,[DI]
JMP
TRAN
BINASC16:
MOV
DI,[BX]
MOV
DX,[DI]
TRAN:
MOV
DI,[BX+2]
MOV
CL,[DI]
XOR
CH,CH
MOV
DI,[BX+4]
LOP:
ROL
DX,1
MOV
AL,DL
AND
AL,01H
ADD
AL,30H
MOV
[DI],AL
INC
DI
LOOP
LOP
RET
BINASC
ENDP
--------------------------------------------------------------
程序是这个

  • 璇曠紪鍐欎竴涓姹囩紪璇█婧愮▼搴,灏嗛敭鐩樿緭鍏鐨凙SCII鐮佽浆鎹涓轰簩杩涘埗銆俖鐧惧害鐭...
    绛旓細E ASCII ===> 01100101
  • 姹囩紪ASCII 杞崲
    绛旓細鐢ㄩ敭鐩樿緭鍏ュ瓧绗︼紙鍖呮嫭鏁板瓧锛夛紝鏄剧ず鍏 ASCII 鐮銆绋嬪簭锛屼互鍙婅繍琛屾埅鍥惧涓嬶細
  • 姹囩紪璇█鎬庢牱瀹炵幇ASCII鐮佽浆鎹涓轰簩杩涘埗鏁
    绛旓細OFFSET TABLE CALL BINASC16 --- --- 瀛绋嬪簭濡備笅: BINASC PROC BINASC8: MOV DI,[BX] MOV DH,[DI] JMP TRAN BINASC16: MOV DI,[BX] MOV DX,[DI] TRAN: MOV DI,[BX+2] MOV CL,[DI] XOR CH,CH MOV DI,[BX+4] LOP: ROL DX,1 MOV AL,DL AND AL,...
  • 姹囩紪ASCII 杞崲
    绛旓細;杈撳叆A;杈撳嚭0041H(鍗佸叚杩涘埗鐨凙SCII);鏍稿績浠g爜鏄悜鍗佸叚杩涘埗杞崲鐨勫瓙绋嬪簭;鍙﹀姝ょ▼搴忚繕鍏锋湁閫氱敤鎬,涓嶄粎鍙互杈撳嚭A-Z鐨凙SCII,閽堝鍏跺畠鍙緭鍏ュ瓧绗︿篃鍙互杈撳嚭鍏禔SCIIdata segment str1 db 'INPUT:$' str2 db 'ASCII(16):$'data endscode segment assume cs:code,ds:datamain proc farstart: mov ax,data mov ds...
  • 姹囩紪璇█闂,杈撳叆4浣岮SCLL鐮佽浆鎹鎴4浣16杩涘埗鏁,骞跺湪灞忓箷涓婃樉绀哄嚭鏉...
    绛旓細姹囩紪璇█闂锛岃緭鍏4浣岮SCLL鐮佽浆鎹鎴4浣16杩涘埗鏁帮紝骞跺湪灞忓箷涓婃樉绀哄嚭鏉ャ備粈涔堟槸杈撳叆 4 浣 ASCII 鐮佸憖锛熸槸鐢ㄩ敭鐩樿緭鍏ュ悧锛熴杩樻槸鐢ㄥ叾瀹冨閮ㄨ澶囪緭鍏ワ紵浣犲湪閿洏涓婏紝闅忎究鏁插洓涓敭锛屽锛1A2F锛岄偅涔堬紝浠庨敭鐩樿緭鍏ュ埌涓绘満鐨勶紝灏辨槸 1A2F 鐨 ASCII 鐮銆傚嵆锛31H銆41H銆32H銆46H銆傜劧鍚庯紝涓嶉渶瑕佸仛浠讳綍杞崲锛...
  • ...鐢姹囩紪璇█缂栧啓鎶ASCII杞寲涓鍗佸叚杩涘埗鐨勭▼搴
    绛旓細浣ascii鐮 鏄10杩涘埗鐨勬暟瀛楀簭鍒 杩樻槸 16杩涘埗鐨勬暟瀛楀簭鍒楋紵濡傛灉鏄16杩涘埗鐨勬暟瀛楀簭鍒楋紝鍙渶瑕佹瘡涓浣嶅噺30h鎴37h寰楀埌瀵瑰簲鐨16杩涘埗鏁颁綅锛屽啀閫氳繃宸︾Щ4浣 涓杞崲涓嬩竴浣嶇浉鎴栧嵆鍙傚姝ゅ惊鐜傚鏋滄槸10杩涘埗鐨勬暟瀛楀簭鍒楋紝鍒欓渶瑕佹瘡涓浣嶅噺30h寰楀埌瀵瑰簲鐨10杩涘埗鏁颁綅锛岄氳繃涔10鍐嶇浉鍔犺浆鎹㈢殑涓嬩竴浣嶅嵆鍙傚姝ゅ惊鐜
  • 濡備綍鐢姹囩紪璇█灏咮CD鐮96H杞崲鎴2涓瓧鑺鐨凙SCII鐮?
    绛旓細濡傚崄杩涘埗鏁96琛ㄧず鎴愬帇缂〣CD鐮佸氨鏄96H锛杞崲鎴ASCII鐮灏辨槸鍘嬬缉BCD鐮佽〃绀虹殑鍗佽繘鍒舵暟鐨勯珮浣嶅拰浣庝綅鍒嗗紑锛屼互ASCII鐮佽〃绀猴紝鍗宠浆鎹㈡垚39H鍜36H銆姹囩紪璇█(AssemblyLanguage)鏄潰鍚戞満鍣ㄧ殑绋嬪簭璁捐璇█銆傚湪姹囩紪璇悎涓紝鐢ㄥ姪璁扮(Memoni)浠f浛鎿嶄綔鐮侊紝鐢ㄥ湴鍧绗﹀彿(Symbol)鎴栨爣鍙(Label)浠f浛鍦板潃鐮併傝繖鏍风敤绗﹀彿浠f浛...
  • 鐢姹囩紪璇█灏嗗甫绗﹀彿鍗佽繘鍒舵暟鎹鐨凙SCII鐮涓杞崲涓浜岃繘鍒惰ˉ鐮佽〃绀鎬庝箞鍋...
    绛旓細锛嶏紞锛 甯︾鍙峰崄杩涘埗鏁版嵁鐨凙SCII鐮涓诧紝杩欐槸鎸囷細浠 0 鍋氱粨灏炬爣蹇楃殑涓涓 ASCII 鐮銆傞殢渚垮啓鍑轰袱涓诧紝濡備笅锛欴B '+12345', 0 DB '-24680', 0 鎶婂畠浠紝杞崲涓浜岃繘鍒惰ˉ鐮佽〃绀猴紝鍗充负锛0011 0000 0011 1001锛1001 1111 1001 1000銆姹囩紪璇█绋嬪簭濡備笅锛氬叾涓滃甫绗﹀彿鍗佽繘鍒舵暟鎹殑ASCII鐮佷覆鈥濇槸锛氾紞13579...
  • 灏嗘煇涓崄杩涘埗鏁ASCII鐮涓杞崲涓瀵瑰簲鐨勪簩杩涘埗鏁姹囩紪璇█
    绛旓細ASCII鏁拌浆涓哄搴旂殑鏁帮紝鐩稿綋浜巗ub al,30H銆xchg ax, a ;ax, a浜ゆ崲 mul bx ;a*10 -> dx:ax, 鍙彇ax add ax, a ;a*10 + a xchg ax, a ;浜ゆ崲鍥炲幓 inc si ;涓嬩竴涓暟 loop m0 ;杞崲缁撴潫,10杩涘埗鎵撳嵃 mov ax, a xor cx, cxQ0: xor dx, dx div bx x...
  • 鎬庝箞鐢姹囩紪璇█鎶婂瓧绗杞寲鎴ascii
    绛旓細0 mov cl,10 div cl mov byte ptr[@@y+4],ah ;淇濆瓨涓綅 add byte ptr[@@y+4],30h ;涓綅杞珹SC2 mov ah,0 div cl mov byte ptr[@@y+3],ah ;淇濆瓨鍗佷綅 add byte ptr[@@y+3],30h ;鍗佷綅杞珹SC2 mov ah,0 mov byte ptr[@@y+2],...
  • 扩展阅读:ascii码值从小到大顺序 ... ascii码对照表 ... 标准ascii码表图 ... 标准ascii码256完整表 ... c语言ascii码表图 ... 中文转ascii码在线 ... 中文汉字ascii码 ... c语言怎么获取ascii码 ... 十六进制ascii码图 ...

    本站交流只代表网友个人观点,与本站立场无关
    欢迎反馈与建议,请联系电邮
    2024© 车视网