Tutorial Moodle VPL Assembly Language with Output

From dftwiki3
Jump to: navigation, search

--D. Thiebaut (talk) 08:25, 12 June 2014 (EDT)



MoodleVPLLogo.png



Moodle VPL Tutorials



This tutorial builds on the first one in the series, which should be done first, as the present tutorial skips some steps. In this tutorial I present a simple VPL activity to test an assembly language program that displays a fixed string of characters.


Setup


  • Moodle Version 2.7 + (Build: 20140529)
  • VPL Version 3.0.1
  • For details on how Moodle and VPL were installed, go to this page.


VPL Activity


Assembly Language: print stars
Due date: Monday, 20 June 2016, 8:00 PM
Requested files: hw2.asm (Download)
Type of work: Individual work
Grade settings: Maximum grade: 100
Run: Yes Evaluate: Yes
Assembly Language program that displays stars

Execution files

vpl_run.sh


#! /bin/bash
 
cat > vpl_execution <<EOF
#! /bin/bash
nasm -f elf -F stabs hw2.asm
ld -melf_i386 -o hw2 hw2.o
./hw2
EOF

chmod +x vpl_execution


vpl_evaluate.cases


case = Test 1
output = "*********************
*********************
*********************
*********************
*********************
*********************
"


Testing


  • In the VPL Administration box, click on Test activity, Edit, and enter the solution program below in the edit box:


                        section .data
        stars           db      "*********************", 10
                        db      "*********************", 10
                        db      "*********************", 10
                        db      "*********************", 10
                        db      "*********************", 10
                        db      "*********************", 10

                                section .text
                                global _start
_start:

;;; print stars
                                mov     eax, 4
                                mov     ebx, 1
                                mov     ecx, stars
                                mov     edx, 132
                                int     0x80

;;; ; exit

                                mov     ebx, 0
                                mov     eax, 1
                                int     0x80


  • Click on Run and verify that you get an array of stars in the terminal window.

MoodleVPLAssemblyStarArrayRun.png


  • Click on Evaluate and verify that you get 100/100.

MoodleVPLAssemblyStarArrayEvaluate.png



This concludes this tutorial.