日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

assembly x86(nasm)串比较

發(fā)布時間:2025/3/20 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 assembly x86(nasm)串比较 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

預(yù)留字符串口令,輸入口令串與預(yù)留密碼串比較。若匹配則顯示“MATCH!CONGRATULATION”,否則顯示“NOMATCH!”,并讓用戶重新輸入,程序能對口令進(jìn)行測試,但測試次數(shù)最多3次,若3次輸入密碼皆錯,給出相應(yīng)的提示信息,程序退出。

?

兩種做法:

data segment message db 'This is a sample program of passward'db 0dh,0ah,'Please strike the key!',0dh,0ah,'$' passward db 'huangchangsheng$' buf1 db 20db ?db 20 dup('$') FAULT db 0dh,0ah,'NOMATCH!Please enter again!',0dh,0ah,'$' RIGHT db 0dh,0ah,'MATCH!CONGRATULATION!',0dh,0ah,'$' ending db 0dh,0ah,'You have typed the wrong passward for three times!',0dh,0ah,'$' data ends code segment assume cs:code,ds:data start: mov ax,datamov ds,ax mov dx,offset message mov ah,9 int 21h mov cl,3jmp input rinput: mov dx,offset FAULT ;提示錯誤mov ah,9 int 21h input: lea dx, buf1 ;字符串輸入mov ah, 0ah int 21hxor si,si strcmp: ;串比較mov al,passward[si]cmp al,'$'jz output2mov al,passward[si] cmp buf1[si+2],aljnz output1inc sijmp strcmp output1: loop rinputmov dx,offset ending mov ah,9 int 21hjmp exit output2: mov dx,offset RIGHT ;提示正確mov ah,9 int 21h exit: mov ah,4ch int 21h code ends end start

第二種比較難受,因?yàn)閐i和附加段搞了好久,然后是看大佬代碼才發(fā)現(xiàn)自己錯哪了的

https://blog.csdn.net/pengwill97/article/details/79249631傳送門

data segment message db 'This is a sample program of passward'db 0dh,0ah,'Please strike the key!',0dh,0ah,'$' buf1 db 20,?,20 dup('$') FAULT db 0dh,0ah,'NOMATCH!Please enter again!',0dh,0ah,'$' RIGHT db 0dh,0ah,'MATCH!CONGRATULATION!',0dh,0ah,'$' ending db 0dh,0ah,'You have typed the wrong passward for three times!',0dh,0ah,'$' data ends ext segment passward db 'huangchangsheng$' ext ends code segment assume cs:code,ds:data,es:ext start: mov ax,datamov ds,axmov ax,extmov es,ax mov dx,offset message mov ah,9 int 21h mov cx,3jmp input rinput: mov dx,offset FAULT ;提示錯誤mov ah,9 int 21h input: lea dx, buf1 ;字符串輸入mov ah, 0ah int 21hlea di,passwardlea si,buf1+2push cxmov cl,buf1+1repz cmpsb ;當(dāng)前字符相同則繼續(xù)循環(huán)jz output2jnz output1 output1:pop cxloop rinputmov dx,offset ending mov ah,9 int 21hjmp exit output2: mov dx,offset RIGHT ;提示正確mov ah,9 int 21h exit: mov ah,4ch int 21h code ends end start

如果使用repz cmpsb,密碼應(yīng)該放在附加段,不然可能會出bug,原因可能是di是目的變址寄存器,可用來存放相對于 ES 段之目的變址指針。?

?

轉(zhuǎn)載于:https://www.cnblogs.com/lanclot-/p/10963477.html

總結(jié)

以上是生活随笔為你收集整理的assembly x86(nasm)串比较的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 老司机激情影院 | 成人三级在线视频 | 在线观看第一页 | 国产成人亚洲精品 | 国产精品欧美久久久久久 | 国产在线色视频 | 欧美一区视频 | 黑人爱爱视频 | 国产精品815.cc红桃 | 一区二区三区在线观看av | 日韩成人在线播放 | 福利一区在线 | 黄色永久免费网站 | 精品一二三 | 狂野欧美性猛交blacked | 午夜av免费观看 | 精品国产毛片 | www.久久久久久久久久 | 国产一区二区三区视频免费观看 | 欧美日韩亚洲国产另类 | 午夜电影你懂的 | 男人深夜影院 | 91精选国产 | 成人av免费在线播放 | 五月激情六月丁香 | 日韩大尺度视频 | 日本天堂网在线 | 色七七桃花综合影院 | 久久99亚洲精品 | 亚洲爽爽爽| 青青超碰| 欧美美女爱爱视频 | 国产黄色一级大片 | 国产一区二区三区久久久 | 在线观看日韩 | 欧美精品二区三区四区免费看视频 | 锕锕锕锕锕锕锕锕 | 少妇在线| 久久y| 男人影院在线 | 丁香久久婷婷 | 丰满少妇麻豆av苏语棠 | 自宅警备员在线观看 | 在线播放成人av | 久久黄色网络 | 亚洲精品v日韩精品 | 国产精品国产一区二区三区四区 | 欧美日韩综合一区二区三区 | 四虎永久在线观看 | 国产 日韩 欧美 在线 | 精品在线观看一区 | 精品国产网站 | 少妇一区二区三区 | 国产91久久精品一区二区 | 日韩视频一区二区三区四区 | 男ji大巴进入女人的视频 | 天使色吧| 99精品久久久久久中文字幕 | 国产二区在线播放 | 在线免费观看av网址 | 视频在线免费观看 | 9l视频自拍九色9l视频成人 | av天天堂| 国产精品一二三四 | 九色porny自拍视频 | 天天色天 | 免费人妻精品一区二区三区 | 日韩a级在线观看 | 中国一级免费毛片 | 吊视频一区二区三区 | 97人妻精品视频一区 | 成人动漫一区二区三区 | 狠狠人妻久久久久久综合麻豆 | 男女透逼视频 | 欧美黑人做爰爽爽爽 | 婷婷久久伊人 | 国产熟女精品视频 | 日韩精品一区二区三区丰满 | 69视频免费在线观看 | av在线网站观看 | 亚色在线视频 | 日本我不卡 | 91se在线 | 久久久久人妻精品色欧美 | 婷婷色在线播放 | 国产一级淫 | 娇妻玩4p被三个男人伺候电影 | 日本高清视频在线观看 | 欧美一级影院 | 日日噜噜夜夜狠狠久久波多野 | 99久久久无码国产精品免费麻豆 | 欧美色图1| 国产精品无码自拍 | 黄色福利视频网站 | 美女被男生免费视频 | 国产精品美女久久久网av | 国产精品久久久久久久久久久久久久久久久 | 91人妻一区二区 | 欧美一级一片 |