PHP, 46 bytes
No PHP answer on this yet, so here's the easy one:
<?=array_sum(array_map(ord,str_split($argn)));
$ echo Hello World!|php -F addascii.php
1085
More non-competing answers:
48 bytes
Iterative:
foreach(str_split($argn)as$s)$x+=ord($s);echo$x;
51 bytes
Iterative 2:
while($i<strlen($argn))$x+=ord($argn[$i++]);echo$x;
63 bytes
Recursive:
function f($s,$c=0){return$s?f(substr($s,1),ord($s[0])+$c):$c;}
69 bytes
Using PHP's rarely used [citation needed] array_reduce()
function:
<?=array_reduce(str_split($argn),function($c,$i){return$c+ord($i);});