asm
GshWooho
这个作者很懒,什么都没留下…
展开
-
汇编包括排序,子程序等
OUTPUTASTR MACRO STRADDR ; PUSH AX PUSH DX LEA DX, STRADDR MOV AH, 9 INT 21H POP DX POP AX ENDM INPUTASTR MACRO SADDR PUSH DX PUSH AX LEA DX, SADDR MOV AH, 0AH INT 21H POP AX POP DX ENDM DATAS SEGMENT CUE1 db "Please input a string(les原创 2021-04-12 23:06:29 · 229 阅读 · 0 评论 -
汇编上机下
题目三:键盘输入两个四位十六进制数;1)将这两个数以二进制形式输出 2)找出这两个数中的偶数,若有则以十进制输出,若无,输出“NO”。 注意: 寄存器AX和AL通常称为累加器(Accumulator),用累加器进行的操作可能需要更少时间。累加器可用于乘、 除、输入/输出等操作,它们的使用频率很高; 寄存器BX称为基地址寄存器(Base Register)。它可作为存储器指针来使用; 寄存器CX称为计数寄存器(Count Register)。在循环和字符串操作时,要用它来控制循环次数;在位操作 中,当移多位时原创 2021-03-29 23:05:47 · 243 阅读 · 1 评论 -
汇编上机题(上)
题目一:编写一程序,比较两个字符串所含字符是否相等,如果相等,在屏幕上显示“Y”,反之显示“N”。 DATAS SEGMENT CUE1 DB 'PLEASE INPUT A STRING:$' CUE2 DB 'PLEASE INPUT ANOTHER STRING:$' BUFF1 DB 10H DUP('$') BUFF2 DB 10H DUP('$') NEWLINE DB 13,10,'$' DATAS ENDS STACKS SEGMENT STACKS原创 2021-03-29 22:53:32 · 267 阅读 · 0 评论 -
汇编串操作指令
首先有两个buf,存放两个字符串 让SI存buf1, DI存buf2 由于SI的段基址是DS, DI的段基址是ES 所以在比较字符串的时候,我们让ES和DS端重合即可 对于字符串的输入问题: 让AH = 0AH DX = 串首址 CLD:让DF为0,即字符串指针增加方向。然后让SI与DI朝DF的方向自增1个字节 STD:让DF为1, 即字符串指针减小方向。然后让SI与DI朝DF方向自减一个字节 1.使用串处理时(比如串比较),一定要写 MOV ES,AX;附加段与数据段为同一段 ES附加段寄存器,用于指出存原创 2021-03-21 21:47:31 · 616 阅读 · 0 评论