In addition (to Kusalananda's answer):
#! /bin/bash
echo "(bash/ksh): ${@: -1}"
echo "(bash 3.x+): ${!#}"
echo "(bash 3.x+): $BASH_ARGV"
echo "(bash 3.x+/ksh): ${@:$#}"
echo "(bash 3.x+): ${BASH_ARGV[0]}"
and if you worry about portability:
#!/bin/bash
penultimate=''
ultimate=''
for p in $@"$@" ; do
penultimate="$ultimate"
ultimate="$p"
done
echo "penultimate=$penultimate"
echo "ultimate=$ultimate"