汇编语言1道编程

日期:2023-03-22 05:27:27 人气:1

汇编语言1道编程

    A+

汇编语言一道编程题,谢谢

为防抽,加一行汉字:程序如下: dseg segment Array DW 127FH,6786H,234EH, 96 dup (0),0FFFFH org 0500h max DW ? min DW ? dseg ends cseg segment assume ds:dseg, cs:cseg start: mov ax, dseg mov ds, ax lea bx, Array mov cx, 99 mov ax, [bx] mov max, ax mov min, ax add bx, 2 LoopFind: mov ax, [bx] cmp ax, max jbe Skip1 mov max, ax Skip1: cmp ax, min jae Skip2 mov min, ax Skip2: add bx, 2 loop LoopFind mov ah, 4ch int 21h cseg ends end start 在debug里运行到mov ah, 4ch这一句,然后用d ds:0500就能看到结果了。

阅读全文

汇编语言的一道程序设计题 急求!!

; 本程序通过编译,运行正确 Code Segment Assume CS:Code,DS:Code ; ------------------------------------- ; 功能:显示指定地址(Str_Addr)的字符串 ; 入口: ; Str_Addr=字符串地址(要求在数据段) ; 用法: Output Str_Addr ; 用法举例:Output PromptStr Output MACRO Str_Addr lea dx,Str_Addr mov ah,9 int 21h EndM ; ------------------------------------- ; 功能:输出回车换行 Output_CTLF proc Near push ax push dx mov ah,02h mov dl,0dh int 21h mov dl,0ah int 21h pop dx pop ax ret Output_CTLF endp ; ------------------------------------- ; 功能:根据自变量x的值,计算因变量y的值 ; 入口:x=自变量 ; 出口:在当前光标位置显示y的值 Calculate_y Proc Near cmp x,1 jnz $+8 mov y,0 ret cmp x,3 jae $+8 mov y,1 ret mov y,2 ret Calculate_y EndP ; ------------------------------------- x db ? ;自变量 y db ? ;因变量 Prompt_x db 'x=$' ;输入x的值提示信息 Prompt_y db 13,10,'y=$' ;显示y的值提示信息 Start: push cs pop ds Input_x: Output Prompt_x ;提示输入x的值 mov ah,1 int 21h cmp al,27 ;Esc? jz Exit_Proc ;结束程序 cmp al,'1' ;<1? jb Input_x ;重新输入 cmp al,'9' ;>9? ja Input_x ;重新输入 and al,0fh mov x,al ;保存自变量 call Calculate_y ;计算函数值 Output Prompt_y ;提示显示y的值 mov dl,y or dl,30h mov ah,2 ;显示一个字符 int 21h call Output_CTLF call Output_CTLF jmp Input_x Exit_Proc: mov ah,4ch ;结束程序 int 21h Code ENDS END Start ;编译到此结束

阅读全文