我的一个汇编程序:把AX寄存器里的16位数分四次输出来 却是输出了好奇怪的字符 DATA MOV DS,AX LEA SI,D1 MOV CX,4 L1:MOV BX,4 L2:RCL AX,1 PUSH AX ADC DL,30H MOV AH,02H INT 21H POP AX DEC BX CMP BX,0 JNZ L2 MOV DX,SI MOV AH,09H INT 21H LOOP 。汇编寄存器中 ax 和[ax] 什么区别? 操作ax的时候就是直接用ax中的值,[ax]是将ax中的值当作一个地址,然后将这个地址对应该内存中的值来操作。比如mov bx,ax是将ax中的值给bx,mov bx,[ax],是将内存中ds段ax这个偏移地址中的那个值给bx,不知道我说的你能不能明白,用汇编语言编写一个程序,统计寄存器AX中二进制“1”的个数,结果一位十六进制数的形式显示 ;程序已实现,主要考虑的是抄怎样获取1的个数具体以怎样的形式显示没有太在意个数存在BL中,若想百以各种形式显示,调用不同的度子函数即可(现在各种进制转换的汇编代码网上一堆知)code segmentassume cs:codestart:mov ax,1234mov bl,0;统计1的个数mov cx,16;循环次数loop1:test ax,8000h;不断的左移,与道8000h比较获取1的个数jnz loop2inc blshl ax,1loop2:loop loop1输出1的个数mov dl,bladd dl,30hmov ah,02hint 21hmov ah,4chint 21hcode endsend start汇编编程:在AX寄存器中存放了一个二进制数,通过编程,将其数值在屏幕上进行显示 不要太复杂,刚学 告诉你一个思路利用循环左移指令,可以把AX的数字从高位开始左移到 标志位然后判断如果是1输出“1”否则输出“0”循环16次,可以显示完成可以用CX计数还要调用字符显示中断汇编语言-简单的比较无符号数 很简单的比较啊比较ax和bx如果是ax>;bx 就用cx与ax和bx比较如果cx>;ax就输出ax;如果cxax的情况也可以直接排序 按照ax>;bx>;cx排序 然后输出bx 我记得X86好像有交换数据的指令,就不需要额外的存储单元了汇编语言编写一个程序,统计AX中0 的个数,结果放在CL寄存器中,假设AX=OFF37H,CL=13 这样:mov ds:[0],0mov ax,0ff37h;假设用这个数字mov dx,0001hmov cx,0FHs:mov bx,dx;bx从01h开始add bx,ax;与运算,cmp bx,dx;如果相等位是1,否则是0jne z;如果不相等,为0则跳,add dx,dxloop smov cl,ds:[0]mov ax,4c00hint 21hz:Inc ds:[0]sub cx,1add dx,dxjmp s
随机阅读
- 冰岛、瑞士、比利时世界杯预选赛中表现出色,是什么原因使这些小国变身足球强哥国? 比利时世预选赛成绩
- 瑞兹守护者雕像特效
- 去朋友家赴宴带什么礼物好 正月间到朋友家串门送什么礼物
- lol周免英雄今天现在更新了吗 lol周免英雄9.12
- 与幸福相关的一段话 用幸福写一段话
- 战友战友亲如兄弟歌曲下载 “战友战友亲如兄弟……”的歌名的什么??
- 海林横道河具体位置 海林市横道河子到赤峰市最近路线怎么走
- 疏通马桶职业 疏通马桶一般方法
- 大疱性类天疱疮分几种 大疱性类天疱疮症状?
- 结石医院定问云南结石病医院 听说云南结石病医院现在搞活动,是十元彩超查结石,请问这个活动要搞到好久停止呢?
- 朝阳瓦房子镇与朝阳市距离 从北京通县梨园回辽宁省朝阳县瓦房子镇怎么走最近
- 水产渔业类期刊 水产的杂志有哪些?
- 广东江门新会双水邮编 广东省江门市新会区双水镇双水墟丰华工业园邮编是什么?
- 报告文学的文学形式是怎样的? 报告文学的现代转进
- 团体最后阶段计划书 求《职业生涯规划计划书》例文,尽量多给几篇,谢谢,急求,以前没写过,望会写的哥哥姐姐帮助,谢谢
- 五峰芽毛尖山水情 河南附近,有没有环境优美性价比高的景点推荐一下?
- 天刀跑商货物倒卖 天刀跑商价格浮动是什么意思?越高越好还是越低越好
- 东莞龙凤山庄影视度假村的餐饮住宿 东莞市凤岗镇嘉辉路龙凤山庄影视度假村
- 要112个字的诗词 天仗里常瞻凤辇
- 乌鲁木齐昆仑东街水 乌鲁木齐水磨沟区昆仑东街218号咋坐公交