I bet you created a GUID Partition Table (GPT) on the disk to get the "last usable sector" number.
Did you notice that the last usable sector is 34 sectors less than the total number of sectors?
Check this out:
(source)
Those "unusable" 33 sectors are actually for the backup GPT! (That's LBA -34 to the end.)
We can also derive why the last MiB-aligned sector and the last I/O block aligned sector are the way they are.
Note: You likely arrived at your last sector numbers without using a GPT. The legacy MS-DOS partition table only takes up 512 bytes (1 logical sector) at the beginning of the disk with nothing at the end.
Disk Information
Logical sector size: 512 (used in calculations)
Physical sector size: 4096 (used for I/O block alignment)
Physical Block Alignment
Your last aligned sector: 976773167
Physical sector size: 4096
Divide by logical sector size: ÷512
----
Sectors for block alignment: 8
Total sector count: 976773168
Divide by alignment sectors: ÷8
---------
Max 4KiB blocks: 122096646
Unusable sectors remainder: 0
Total sector count: 976773168
Subtract remainder: -0
---------
First unalignable sector: 976773168
Your last aligned sector: 976773167
1MiB Block Alignment
Your last aligned sector: 976773119
1MiB in bytes: 1048576
Divide by logical sector size: ÷512
-------
Sectors for 1MiB alignment: 2048
Total sector count: 976773168
Divide by alignment sectors: ÷2048
---------
Max 1MiB blocks: 476940
Unusable sectors remainder: 48
Total sector count: 976773168
Subtract remainder: -48
---------
First unalignable sector: 976773120
Your last aligned sector: 976773119