نمایش نتایج 1 تا 2 از 2

نام تاپیک: در مورد کد تبدیل کننده حروف بزرگ به کوچک

  1. #1

    در مورد کد تبدیل کننده حروف بزرگ به کوچک

    سلام

    من این کد رو از داخل کتاب آموزشی نوشتم همه قسمت هاشو میفهمم ولی یه قسمتشو نمیفهمم که در کد زیر به رنگ قزمز لطف کنید بگید اون کد چکار میکنه؟؟!!!!

    ;Ability of thiS program.
    ;1-Clear screen.
    ;2-Set pointer.
    ;3-Get string.
    ;4-Convert to lower case.
    ;5-Display on screen
    .MODEL SMALL
    .STACK
    .DATA
    BUFFER DB 22,?,22 DUP(?)
    ORG 18H
    DATAREA DB CR,LF,22 DUP(?),'$'
    CR EQU 0DH
    LF EQU 0AH
    ;_____________________

    .CODE
    MAIN:
    MOV AX,@DATA
    MOV DS,AX
    CALL CLEAR
    CALL SET_POINTER
    CALL GET_DATA
    CALL CONVERT
    CALL DISPLAY
    MOV AH,4CH
    INT 21H

    ;_________Clear________
    CLEAR:
    MOV AX,0600H
    MOV BH,07H
    MOV CX,0000
    MOV DX,184FH
    INT 10H
    RET
    ;______________________
    SET_POINTER:
    MOV AH,02
    MOV BH,00
    MOV CX,1
    MOV DX,3
    INT 10H
    RET
    ;______Display__________
    DISPLAY:
    MOV AH,09
    MOV DX,OFFSET DATAREA
    INT 21H
    RET
    ;______Get data_________
    GET_DATA:
    MOV AH,0AH
    MOV DX,OFFSET BUFFER
    INT 21H
    RET
    ;______Convet to lower case______
    CONVERT:
    MOV BX,OFFSET BUFFER
    MOV CL,[BX]+1
    SUB CH,CH
    MOV DI,CX
    MOV BYTE PTR[BX+DI]+2,20H

    MOV SI,OFFSET DATAREA+2
    AGAIN: MOV AL,[BX]+2
    CMP AL,'A'
    JB NEXT
    CMP AL,'Z'
    JA NEXT
    OR AL,00100000B
    NEXT: MOV [SI],AL
    INC BX
    INC SI
    LOOP AGAIN
    RET
    END MAIN

  2. #2
    کاربر تازه وارد
    تاریخ عضویت
    آبان 1383
    محل زندگی
    تهران
    پست
    81

    نقل قول: در مورد کد تبدیل کننده حروف بزرگ به کوچک

    دو خط قرمز باعث میشه یک Space (کد اسکی 20 در مبنای هگز) به انتهای Buffer قرار گیرد.
    البته با حذف این دو خط باز برنامه اجرا میشه حالا چرا این space اضافه کرده رو سر در نیاوردم.

    حال اگر دو خط قرمز رو به این صورت تغییر بدیم

    MOV DI,CX
    MOV BYTE PTR[BX+DI]+2,21H

    ADD CX,01

    یک علامت ! به انتها اضافه می کند

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •