technical-codesBest Round-off Practice’s

Best Round-off Practice’s

Python-inspired pseudo code snippet to calculate the average and perform upper round-off, followed by the corresponding assembly code:


def calculate_average_with_rounding_up(array):
    sum = 0
    count = len(array)
    for num in array:
        sum = sum + num
    average = sum / count
    remainder = sum % count
    if remainder >= count // 2:
        average = average + 1
    return average
  • The Python code calculates the average of a set of integers.
  • It divides the sum of the integers by the total count of integers.
  • If there’s a remainder when dividing, it checks if the remainder is greater than or equal to half of the count.
  • If so, it rounds up the average by adding 1 to the quotient.

The final rounded average is then displayed using the provided output functions.

Let’s code the same in assembly language for DWORD.

    mov     EBX, INTEGER_COUNT
    idiv    EBX
    mov     ECX, EBX 
    shr     ECX, 1   
    cmp     EDX, ECX
    jmp     upperroundup
    push    EAX 
    call    CrLf
    call    CrLf
    mDisplayString [EBP + 24]
    pop     EAX
    push    [EBP + 22]
    push    EAX
    call    WriteVal
    pop     EBP

    add     EAX, 1 
    call    CrLf
    call    CrLf
    mDisplayString [EBP + 24]
    push    [EBP 22]
    push    EAX
    call    WriteVal

    pop     EBP

Get in Touch: Reach Out to Us Today!

for Jobs/Careers please click here